PowerBI: Power Dotaz: Obchodovanie s meniacim sa názvy stĺpcov v dôsledku čapov

0

Otázka

Pre správu som robiť. Mám dátum stĺpci. Som extrahovať mesiacov od tohto stĺpca a potom otáčajte mesiacov.

Tak napríklad by som mohol mať tabuľku ako:

Súčasťou# Mesiac Qty
1 1 10
1 2 10
1 3 10
1 4 10
1 5 10
1 6 10

Čo keď som pivot to sa stáva:

Súčasťou# 1 2 3 4 5 6
1 10 10 10 10 10 10

Potom som premenovanie stĺpcov, spolu s tým, čo robí niekoľko ďalších úloh, ako je napríklad vytvorenie stĺpci maximá. Vzhľadom na to, že údaje, ktoré som potiahnite je iba za 6 mesiacov stojí za to. Tieto stĺpce mená sa zmeniť. V budúcnosti to môže byť:

Súčasťou# 4 5 6 7 8 9
1 10 10 10 10 10 10

Tak takýto riadok:

Table.ReplaceValue(#"Pivoted Column",null,0,Replacer.ReplaceValue,{"1", "2", "3", "4", "5", "6"})

sa chystá vytvoriť chybu, keď stĺpce sú 4,5,6,7,8,9. Existuje spôsob, ako zvládnuť tento problém?

pivot powerbi powerquery
2021-11-22 19:02:59
2

Najlepšiu odpoveď

0

Budete musieť manuálne kód krok na premenovanie stĺpcov po pivot.

Tento M kód ťahá stôl ako jeden z vašej príklad z bežného zošita v programe Excel, potom otočnými čapmi, ako ste popísal, potom premenuje stĺpce Súčasťou#, 1., 2., 3., 4., 5. a 6.. Áno, povedal som to premenuje na Časti#, aj keď to nie je naozaj zmeniť názov stĺpca. Nezabudnite zahrnúť Časti# v zozname kódované v kroku, aj keď Part# názov nie je naozaj zmena, pretože je potrebné, aby sa zohľadnili všetky názvy stĺpcov, extrahované podľa Tabuľky.ColumnNames. Nahradiť 1st, 2nd, 3rd, 4th, 5. a 6. s váš požadovaný názvy stĺpcov.

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Pivoted Column" = Table.Pivot(Table.TransformColumnTypes(Source, {{"Month", type text}}, "en-US"), List.Distinct(Table.TransformColumnTypes(Source, {{"Month", type text}}, "en-US")[Month]), "Month", "Qty"),
    #"Renamed Columns" = Table.RenameColumns(#"Pivoted Column", List.Zip({Table.ColumnNames(#"Pivoted Column"),{"Part#", "1st", "2nd", "3rd", "4th", "5th", "6th"}}))
in
    #"Renamed Columns"

List.Zip interweaves dva zoznamy spolu. Tu je interweaves Súčasťou# z pôvodných názvov stĺpcov (v "Pivoted Stĺpci" krok tabuľka), potom Časť# zo zoznamu kódované do #"Premenovaná Stĺpce, potom ďalší originálny názov stĺpca (1 z vášho prvý príklad alebo 4 z vášho druhý príklad), potom od 1. stĺpci zoznamu kódované do #"Premenovaná Stĺpce, potom ďalší originálny názov stĺpca (2 od svojho prvého príklad alebo 5 z vášho druhý príklad), potom 2. zo stĺpca zoznamu kódované do #"Premenovaná Stĺpce, a tak ďalej. To ustanovuje zoznam potrebných na Stôl.RenameColumns.

2021-11-22 21:03:52
0

Môžete použiť TableColumNames ak chcete získať zoznam názvov stĺpcov, potom môžete premeniť tohto zoznamu. Takže pre váš príklad, môžete použiť niečo ako:

= Table.ReplaceValue(#"Pivoted Column",null,0,Replacer.ReplaceValue,List.Skip(Table.ColumnNames(#"Pivoted Column"),1))
2021-11-22 20:52:23

V iných jazykoch

Táto stránka je v iných jazykoch

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................