Hogyan kommentáljunk Pythonban – Rövid útmutató kezdőknek
Hogyan kommentáljunk Pythonban – Rövid útmutató kezdőknek
Ennek az oktatóanyagnak a célja, hogy megvitassa, hogyan számítható ki a távolság és az irányszög a LuckyTemplates programban, és hogyan lehet ezeket hatékonyan használni.
A neten rengeteg távolságszámítást találhatsz. Ehhez a bemutatóhoz egy olyan megoldás egyszerűsített példáját fogom használni, amelyet az egyik ellátási lánc hálózati projektemhez kellett elkészítenem.
Megmutatom a szállítási raktár és a szervizhelyek közötti egyenes távolság kiszámítását is.
Itt van egy szeletelőm a távolság kiválasztásához a. Ez lehetővé teszi az ügyfelek, áramlások, súly, bevétel és bármely más érték dinamikus elemzését a kiválasztott távolságon belül.
A Haversine- képletként is ismert nagykör-távolság- számítás ennek az oktatóanyagnak a fő mértéke. Ha elsajátítja ezt a technikát, bármilyen szükséges távolság- és csapágyszámítást elvégezhet.
Bár a legtöbb számítást a Power Queryben részesítem előnyben, DAX-mértéket kell használni, ha dinamikusan kell elemeznie az adatokat a választható távolság alapján.
Ha rendelkezésre áll, a tényleges távolság lehet a preferált lehetőség. Erre azonban sok esetben nincs szüksége, mivel az egyenes távolság elegendő lesz.
A Google vagy a Bing API használható a távolság hozzáadására a Power Queryben mind a tényleges, mind az egyenes távolsághoz. Jó gyakorlat, ha több eszköz van a térinformatikai eszköztárban. Az API LuckyTemplates alkalmazására azonban nem lesz szó ebben az oktatóanyagban.
Tartalomjegyzék
A forgatókönyv megértése
Megkértek, hogy segítsek a legközelebbi üzlethelyiség kijelölésében az üzleti csomagtárolókhoz a szervizmérnökök lakcímére.
A szervizmérnökök előre meghatározott munkaterületeken dolgoztak, amelyek idővel változhatnak, és otthonról kezdték meg ezt a munkát.
Egyik napról a másikra megtörtént a sürgős pótalkatrészek utánpótlása a csomagszekrényekbe. Másnap reggel a mérnök a munkaterülete felé tartó úton összeszedte az alkatrészeket a csomagszekrényből.
Általában GIS (Geographic Information System) szoftvert használok az ilyen jellegű elemzésekhez. De most megpróbálom megtenni a LuckyTemplates segítségével, hogy dinamikus elosztási modellt kapjak. Az egyenes távolság és a csapágy számítását is felhasználtam.
A GIS- ben az irányszöget használják a navigációhoz vagy az irányhoz. Ebben a példában hozzáadtam az irányt ( Tájolás ) átalakított csapágyat , mert maga a távolság nem kínálja a teljes megoldást.
A legközelebbi csomagmegőrző a munkaterülettel ellenkező irányban található. Tehát az irányt is meg akartam jeleníteni.
Ez lehetővé teszi a szekrénykiosztás kiválasztásának korlátozását a munkaterület megfelelő földrajzi címei alapján.
Például a munkaterület az otthonától északra található. Tehát a csomagmegőrző helyének ugyanabba az irányba kell lennie.
A távolság és irányvonal adatkészlet elemzése
Ebben az egyszerűsített példában az adatkészlet hollandiai címeket és ingyenes csomagmegőrző helyeket tartalmaz.
Ez oszlopokat tartalmaz a szélesség és hosszúság (ig és innen ) , a Depot , a Name , a Parts value és a Demand oszlopokhoz .
A kezdeti táblázat mellett találhatók a számított oszlopok és a távolságszámítások Excelben. Először kiszámoltam a radiánokat.
Ezután a radián és a Haversine képlet segítségével elkészítettem a tényleges távolságszámításokat mérföldre és kilométerre egyaránt .
Távolság és irányszámítás: Demo adatok létrehozása
A csapágyra vonatkozó számítások kezdetben egy decimális számot eredményeznek fokokban. Szóval ezt át kell alakítanom valami praktikusabbra.
Létrehoztam egy táblázat oszlopot 1-360 fokokkal. Hozzáadtam egy oszlopot is az iránytű szerint.
Ezenkívül hozzáadtam egy SORT oszlopot az irányok óramutató járásával megegyező irányú rendezéséhez a LuckyTemplatesben.
Ezt követően betöltöttem a sourceNL adatkészletet és az Orientation táblát a Power Queryben.
Vessünk egy pillantást a sourceNL táblára.
Az oszlopok hozzáadása
Először hozzáadtam egy Index oszlopot. Amikor átalakításokat végzek a szerkesztőben, hozzáadok egy Index oszlopot referenciaként vagy rendezés céljából.
Ezután a szélességi és hosszúsági fokot 4 számjegyre kerekítettem , ami fontos a nagyobb adatkészleteknél. Ezzel 11 méteres pontosságot ad vissza , ami még mindig elég.
A példa kedvéért minden egyes lépést egy külön számított oszlopba adtam a térkép megjelenítéséhez. Kiszámoltam a szélességi és hosszúsági értékek radiánját, ugyanúgy, mint az Excelben.
Ezután a Haversine képletet alkalmaztam a távolságok mérföldben és kilométerben való kiszámításához.
Csapágy és Tájolás
A csapágy esetében a számítás egy másik képlet, amelyet a webről vettem. Csak egy kicsit módosítottam, hogy megfeleljen a céljaimnak.
Kezdetben ez a számítás radiánban történik. Teljesen haszontalan. Szóval át kell alakítanom.
Ez a csapágy előlépése . Ez a radiánok átszámítására szolgál a számításom következő lépésére.
A következő lépésben megváltoztattam a negatív számokat, és ezzel a számítással korrigáltam őket.
Ezt követően kerekítettem a csapágyat, hogy egész számot kapjak.
Töröltem a Bearing (rad) , Bearing pre , és Bearing oszlopokat. Aztán átneveztem a Naar boven afronden oszlopot Bearing Roundup névre .
Most már össze tudom vonni a táblázatban található csapágykör oszlopot az Orientation tábla CSAPÁGY oszlopával .
Ezzel megkaphatnám az irányt.
Most megvannak a csapágy ( Bearing Roundup ) és az irány ( Orientation_Direction ) oszlopok, amelyeket a következő modellhez fogok használni.
Íme az eredmény a Power Queryben.
R Script távolság- és irányszámításhoz
Ehhez egy R-szkripttel rendelkező megoldást fogok használni . Ez egy adatkészlet a kiszámított távolságokat mérföldben és kilométerben.
Ezt az R szkriptet futtatom, amely sokkal rövidebb és tisztább, mint a képletek.
Az R szkript futtatása után 3 táblám van.
Íme a kimenet. Le is kerekítettem.
Amint láthatja, az R script és az Excel számítás eredményei hasonlóak.
Térképkép hozzáadása
Végül a végeredményt egy vizuális megjelenítéssel egészítem ki.
Ehhez megismételtem az a. Feltöltöttem a táblázatot a 3 hellyel. Az Orientation táblát és az adatkészletet ( selectionNL ) is betöltöttem a Rendezés oszloppal. Ezután egyesítettem az Orientation oszlopait .
Ezzel elkészül a végső modell.
Következtetés
Ebben a jelentésben úgy döntöttem, hogy az ügyfél által látott irányt mutatom be. Ezt megfordíthatja, vagy mindkettőt megjelenítheti a jelentésben, preferenciáitól függően. Mindössze annyit kell tennie, hogy a számítás során felcseréli a kezdő és a szélességi és hosszúsági fokokat.
Remélhetőleg ez az oktatóanyag hozzájárult általában a távolság- és irányszámítások jobb megértéséhez.
További példákért és kapcsolódó tartalmakért tekintse meg az alábbi linkeket.
Egészségére!
Pál
Hogyan kommentáljunk Pythonban – Rövid útmutató kezdőknek
Ez az oktatóanyag áttekintést nyújt a Power Query szerkesztőről és az M nyelvről a LuckyTemplates asztalon.
Ismerje meg, hogyan hozhat létre oldalszámozott jelentést, hogyan adhat hozzá szövegeket és képeket, majd exportálhatja a jelentést különböző dokumentumformátumokba.
Ismerje meg, hogyan használhatja a SharePoint automatizálási funkcióját munkafolyamatok létrehozására, és segít a SharePoint-felhasználók, -könyvtárak és -listák mikrokezelésében.
Fejlessze jelentéskészítési készségeit, ha csatlakozik egy adatelemzési kihíváshoz. Az Accelerator segítségével LuckyTemplates szuperfelhasználóvá válhatsz!
Ismerje meg, hogyan számíthatja ki a futó összegeket a LuckyTemplates programban a DAX segítségével. Az összesítések futtatása lehetővé teszi, hogy ne ragadjon le egyetlen egyéni eredménynél sem.
Ismerje meg a változók fogalmát a DAX-ban a LuckyTemplates-en belül, és a változók hatásait a mérőszámok kiszámítására.
Tudjon meg többet a LuckyTemplates Slope diagram nevű egyéni vizualizációról, amely egyetlen vagy több mérőszám növekedésének/csökkenésének megjelenítésére szolgál.
Fedezze fel a LuckyTemplates színtémáit. Ezek elengedhetetlenek ahhoz, hogy jelentései és vizualizációi zökkenőmentesen nézzenek ki és működjenek.
Az átlag kiszámítása a LuckyTemplates alkalmazásban számos módon elvégezhető, hogy pontos információkat kapjon üzleti jelentéseihez.