LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Ebben a blogban megmutatom, hogyan távolíthatja el a LuckyTemplates Power Query ismétlődő sorait a feltételek alapján. Az oktatóanyag teljes videóját a blog alján tekintheti meg.

Ez a példa egy kérdésből származik, amelyet a. A tag tranzakciós adatokkal rendelkezik, és el akarja távolítani az egymást kizáró sorokat.

Két különböző tranzakciótípus létezik, az egyik a bejövő és a másik a kimenő tranzakciókra. A mozgásszámot is hozzáadta. És ez alapján három forgatókönyvet fogalmazott meg.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Az első forgatókönyv két soron alapul. Ha kioltják egymást, mindkét sort el kell távolítani. Ha ez nem így van, akkor mindkét sort meg kell tartani.

A második és harmadik forgatókönyv sorok kombinációján alapul, amelyek részben kioltják egymást. Ezeket a sorokat az „első az elsőben” alapon el kell távolítani, hogy csak a legutolsó bejövő tranzakciók maradjanak meg.

Alapvetően ugyanazt a logikát ismételgetjük újra és újra. Képesnek kell lennünk egyetlen megközelítés kidolgozására, amely illeszkedik ezekhez a forgatókönyvekhez.

Néhány dolog, amit meg fogunk tenni, az, hogy hozzáadunk egy oszlopot abszolút mennyiségekkel, és csoportosítjuk a „mennyiségegyenleg-oszlop hozzáadása” és egy beágyazott táblázatot az „összes sor” opció használatával. Ezenkívül átalakítjuk ezeket a beágyazott táblázatokat, rendezzük a mozgás típusát és a feladás dátumát, létrehozunk egy futó összeget, és csak feltétel alapján tartjuk meg a sorokat.

Ezt közepesre értékeltem, mert itt a legtöbb átalakítást a felhasználói felület használatával végezhetjük el. Ezt követően térjünk át a LuckyTemplates Power Queryre.

Tartalomjegyzék

Oszlop hozzáadása abszolút mennyiségekkel a Power Queryben

Kezdjük azzal, hogy hozzáadunk egy oszlopot abszolút mennyiségekkel. Válassza ki a Mennyiség oszlopot, majd az Oszlop hozzáadása szalagon vagy lapon lépjen a Tudományos elemre , majd kattintson az Abszolút érték elemre .

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Át fogom nevezni ezt az oszlopot a képletsorban.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Csoportosítás azonosító index és abszolút mennyiség szerint

Most már csoportosíthatunk azonosítóindex és abszolút mennyiség szerint. Válassza ki az ID Index elemet , majd tartsa lenyomva a Shift vagy a Control billentyűt a többszörös kijelöléshez, majd kattintson az Abs qty (abszolút mennyiség) elemre.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

A Csoportosítás lehetőséget az Átalakítás lapon találja .

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

De megtalálhatja a Kezdőlap lapon is.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Kattintson rá, és most hozzáadunk egy új oszlopot. Ez nem egy „számlálás”, hanem a mennyiség „összege” lesz. Tehát nevezzük át a Qty (quantity) Balance névre . Ez a mennyiség oszlop összege lesz. Ezután hozzáadunk egy másik összesítést, de az egy speciális lesz, ezért az Összes sor lehetőséget választjuk . Adjunk nevet ennek az oszlopnak is ( AllRows ). Ezután nyomja meg az OK gombot.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Ha a táblázatban a fehér mezőre kattintunk, lentebb láthatjuk a beágyazott táblázat előnézetét. Látjuk, hogy ennek a beágyazott táblának a mennyiségei kioltják egymást, és a mennyiségi egyenleg nulla.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Ha megnézzük a következő beágyazott táblázatot (tehát kattintson oldalra a következő sor fehér mezőjében), azt látjuk, hogy a mennyiség oszlop nem zárja ki egymást, és a mennyiségi egyenleg nagyobb, mint nulla.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Adjunk hozzá egy egyéni oszlopot, hogy a későbbiekben felhasználhassuk beágyazott táblázattranszformációinkhoz. Tehát válassza az Egyéni oszlop hozzáadása lehetőséget .

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Nevezzük át az oszlopot erreés helyőrzőként nullát (0) adunk hozzá. Ezután kattintson az OK gombra.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Beágyazott táblák átalakítása a LuckyTemplates Power Queryben

Most készen állunk arra, hogy létrehozzuk a logikát a beágyazott táblák átalakításához. De nem akarunk egy csomót írni belőlük, és nem is kell.

A felhasználói felületet nagyrészt tudjuk használni. Ha ezeknek az átalakításoknak a logikáját külön lekérdezésben építjük fel, akkor a legkidolgozottabb forgatókönyv a három vagy négy soros forgatókönyv volt.

Most, ha az utolsó sorban a jobb oldalra kattintok, azt látom, hogy ennek a táblázatnak négy sora van. Tehát ezt felhasználhatjuk az átalakulásunk felépítésére.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Kattintson a jobb gombbal a fehér területen lévő oldalra, és válassza a Hozzáadás új lekérdezésként lehetőséget .

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Látjuk, hogy a beágyazott tábla most kibővült, és új lekérdezésként került hozzáadásra, és ezt felhasználhatjuk a szükséges logika felépítésére.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Rendezési mozgás típusa és feladási dátuma

Most először a Mozgás típusa szerint kell rendeznünk . Válasszuk a csökkenőt . Így a kimenő tranzakciók mindig a csúcson lesznek.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Ezután a Feladás dátumát növekvő sorrendben rendezzük , ügyelve arra, hogy ha kihagyunk sorokat, az mindig a FIFO elv szerint történik (first in first out).

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Futóösszeg létrehozása

Az eltávolítandó sorok azonosításához hozzáadok egy futó összeget a letiltáshoz, és használhatjuk a List.FirstN-t ehhez a feladathoz. Ez a funkció egy listát hoz létre egy másik lista alapján, ahol a legfelső elemek egy adott szám vagy kritérium alapján kerülnek tárolásra.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Térjünk vissza a kérdésünkhöz. Két dologra van szükségünk a List.FirstN-hez. Először is szükségünk van arra a listára, és ez a lista a Mennyiség oszlopunk. Ha jobb gombbal kattintok a Mennyiség oszlop fejlécére, megkapjuk a Hozzáadás új lekérdezésként opciót .

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

És itt látjuk a kódot, amelyre szükségünk van a lista létrehozásához. Az alkalmazott lépésben láthatja, hogy az utolsó lépésre mutat, majd azonosítja a zárójelben lévő oszlopot.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

A második rész, amelyre szükségünk van a List.FirstN számára, egy szám, amely meghatározza, hogy hány számot kell megtartani a listából. Ehhez használhatjuk az indexet, ezért ehhez a sorhoz hozzáadok egy indexoszlopot az egyikből (1).

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Tehát az 1-es számnál a Mennyiség oszlop első sorában lévő szám marad, és így tovább. És ezt most összegezhetjük.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Adjunk hozzá egy egyéni oszlopot, és nevezzük azt Futó összegnek . Itt a List.FirstN-t használjuk, és láthatjuk, hogy az első paraméter ez a lista volt, a Mennyiség oszlop. Az utolsó lépésre kell mutatnunk, és ez az utolsó lépés a Hozzáadott index .

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Meghatároztuk a kívánt oszlopot, ez pedig a Mennyiség oszlopunk. Számunk az Index oszlopban található.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Most egy listát ad vissza. Ha a fehér mezőben oldalra kattintunk, láthatjuk a lista tartalmát. Az első rekordnál csak a felső sort tartotta meg a listáról. A második rekordnál megtartotta az első két sort.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Most már csak összegezni kell ezeket a mennyiségeket, és ehhez a List.Sum segítségével tehetjük meg. Szóval, hozzáteszem a képletsávhoz. És felteszem a Típust is .

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Sorok szűrése Feltétel alapján

Ezzel a futó összeggel azonosíthatjuk azokat a sorokat, amelyeket meg akarunk tartani. Csak a nullánál nagyobb sorokat szeretnénk megtartani, ezért adjunk hozzá egy szűrőfeltételt.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Most már eltávolíthatjuk segédoszlopainkat. Válassza az Index és a Futó összeget, majd kattintson az Oszlopok eltávolítása lehetőségre.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

A Speciális szerkesztőben most már másolhatjuk az általunk létrehozott kódot. Megnyitom a -t, és láthatjuk, hogy ez a mi kettéosztott lépésünk. Tehát az alatta lévő mindent kiválaszthatunk és másolhatunk.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Most térjünk vissza az eredeti lekérdezésünkhöz. Nyissa meg ismét a Speciális szerkesztőt. A helyőrző helyett pedig térjünk át egy új sorra. A „ let ” kifejezést fogom használni, mert ez a változók közbenső számításaiból származó értékeket rögzíthet. Tehát „engedjük”, majd lépjen egy új sorba, és illessze be az átalakításaimat. A típust is megadom .

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

A fenti kiemelt kód a kibontott beágyazott táblázatunkra mutat, amely az Összes sor oszlopban található. Tehát erre fogok rámutatni azzal, hogy ezt a kiemelt kódot az AllRows- ra cserélem .

Így a transzformációs oszlopunkban most beágyazott táblázatok vannak. A lekérdezésünket az utolsó sor alapján építjük fel, igaz? És ez négy sort tartalmazott, amikor elkezdtük, és csak kettőt. Nálunk is nulla a mennyiség, igaz? És most van egy üres asztala.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Ezeket a Mennyiségi egyenleg oszlop szűrésével eltávolíthatjuk. Nem akarjuk, hogy a mennyiségi egyenleg nullával egyenlő legyen.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Ezután kiválasztom az átalakítási oszlopomat, és eltávolítom a többi oszlopot. Most már bővíthetem a transzformációs beágyazott tábláimat. Ne használja az eredeti oszlopnevet előtagként, és nyomja meg az OK gombot.

LuckyTemplates Power Query: Ismétlődő sorok eltávolítása

Az Átalakítás lapon válassza az Adattípus lehetőséget , és készen is vagyunk. És így tisztítja meg a tranzakciós adatokat.




Következtetés

Ebben az oktatóanyagban megmutattam, hogyan tisztíthatja meg a tranzakciós adatokat, különös tekintettel az ismétlődő sorok eltávolítására. Ez egy nagyszerű technika, amelyet a LuckyTemplates Power Query használatakor használhat.

Remélem, élvezted ezt. További részletekért tekintse meg az alábbi teljes videós bemutatót. Tekintse meg az alábbi linkeket a LuckyTemplates Power Query Editorral kapcsolatos további kapcsolódó tartalmakért.

Egészségére!

Méhfű


Arány- és gyakorisági táblázatok Excelben

Arány- és gyakorisági táblázatok Excelben

Az Excel gyakorisági táblázataiban, valamint az aránytáblázatokban készültek. Nos, nézze meg, mik ezek, és mikor kell használni őket.

A DAX Studio és a Tabular Editor telepítése a LuckyTemplates alkalmazásban

A DAX Studio és a Tabular Editor telepítése a LuckyTemplates alkalmazásban

Ismerje meg, hogyan töltheti le és telepítheti a DAX Studio és a Tabular Editor 3 alkalmazást, és hogyan konfigurálhatja őket a LuckyTemplates és az Excel programban való használatra.

LuckyTemplates alakzattérkép-vizualizáció a térbeli elemzéshez

LuckyTemplates alakzattérkép-vizualizáció a térbeli elemzéshez

Ez a blog tartalmazza a Shape Map vizualizációt a LuckyTemplates térbeli elemzéséhez. Megmutatom, hogyan használhatja hatékonyan ezt a vizualizációt annak funkcióival és elemeivel.

LuckyTemplates pénzügyi jelentések: az eredmények hozzárendelése a sablonokhoz minden egyes sorban

LuckyTemplates pénzügyi jelentések: az eredmények hozzárendelése a sablonokhoz minden egyes sorban

Ebben az oktatóanyagban egy egyedülálló ötletet mutatok be a pénzügyi jelentésekkel kapcsolatban, amely az eredmények hozzárendelését jelenti a LuckyTemplates-en belüli táblázatsablonok előre meghatározásához.

DAX-mértékek a LuckyTemplates-ben mértékelágazás használatával

DAX-mértékek a LuckyTemplates-ben mértékelágazás használatával

Hozzon létre DAX-mértékeket a LuckyTemplates alkalmazásban meglévő mértékek vagy képletek használatával. Ezt nevezem mértékelágazási technikának.

A legerősebb funkcióhívás a LuckyTemplatesben

A legerősebb funkcióhívás a LuckyTemplatesben

Ebben a blogban fedezze fel a LuckyTemplates adatkészletet, a leghatékonyabb függvényhívást, amely M- és DAX-függvények ezreit juttatja a keze ügyébe.

Adatmodellezési technikák a DAX-mérések megszervezéséhez

Adatmodellezési technikák a DAX-mérések megszervezéséhez

A mai oktatóanyagban megosztok néhány adatmodellezési technikát a DAX-mérések jobb rendszerezéséhez a hatékonyabb munkafolyamat érdekében.

LuckyTemplates pénzügyi irányítópult: Teljes táblázat testreszabási tippek

LuckyTemplates pénzügyi irányítópult: Teljes táblázat testreszabási tippek

A LuckyTemplates egy nagyszerű eszköz a pénzügyi jelentésekhez. Itt található egy oktatóanyag, amely bemutatja, hogyan hozhat létre személyre szabott táblázatokat a LuckyTemplates pénzügyi irányítópultjához.

A Power Query nyelvi folyamatának bevált gyakorlatai

A Power Query nyelvi folyamatának bevált gyakorlatai

Ez az oktatóanyag megvitatja a Power Query nyelvi folyamatot, és azt, hogyan segíthet zökkenőmentes és hatékony adatjelentések létrehozásában.

LuckyTemplates egyéni ikonok | PBI vizualizációs technika

LuckyTemplates egyéni ikonok | PBI vizualizációs technika

Az egyik kedvenc technikámról fogok beszélni a LuckyTemplates egyéni ikonok körül, amely dinamikusan használja az egyéni ikonokat a LuckyTemplates vizualizációkban.