Contact us

Pošlji
povpraševanje

Zakladnica znanja

  • Predzanje

  • Kategorije

June 2, 2020

Dinamično filtriranje s pomočjo seznama v Power Query

Avtor: Branka Trifunović

V članku je uporabljen Power BI Desktop verzije 2.76.5678.782 (December 2019).

Power Query nam omogoča, da podatke poljubno oblikujemo. Pogosto se zgodi, da želimo primerjati dve tabeli med sabo ter na podlagi prve filtrirati drugo. V tem članku si bomo ogledali, kako v tabeli odstranimo vrstice, ki se pojavijo v drugi tabeli.

Oglejmo si primer, pri katerem želimo filtrirati tabelo Sales, tako da bodo v stolpcu Genre ostali vsi žanri, razen Party, Platform in Puzzle. Sledimo naslednjim korakom.

1. Odpremo Power Query z Transform Data.

2. Izberemo filter za stolpec Genre in izberemo Select All. Pri žanrih Party, Platform in Puzzle nato kljukico odstranimo. Potrdimo z OK.

3. Izberemo in odpremo Advanced Editor. Vidimo, da je korak shranjen kot

#”Filtered Rows” = Table.SelectRows(#”Renamed Columns1″,

each ([Genre] <> “Party”

and [Genre] <> “Platform”

and [Genre] <> “Puzzle”))

4. Korak priredimo tako, da namesto naštetih elementov gleda seznam. Seznam bomo najprej posebej ustvarili.

5. Podatke, ki jih želimo filtrirati, bomo zapisali v tabelo, ki jo bomo nato pretvorili v seznam. Da naredimo tabelo izberemo Enter Data in izpolnimo polja: vnesemo žanre, ki jih želimo filtrirati in poimenujemo tabelo GenreList. Potrdimo z OK.

6. Tabelo pretvorimo v seznam z izbiro Transform > Convert to List.

7. Seznam bi lahko podobno ustvarili iz katerekoli druge tabele, ki smo jo uvozili iz datoteke.

8. Popravimo formulo v koraku za filtriranje tabele. Korak bo zdaj:

#”Filtered Rows” = Table.SelectRows(#”Renamed Columns1″,

each List.Contains(GenreList, [Genre]) = false)

Potrdimo z Done.

Korak bo zdaj za vsak element v tabeli preveril, ali se nahaja znotraj seznama GenreList. Po filtriranju bodo v tabeli ostali zgolj elementi, ki se ne nahajajo na seznamu.

Kazalo