Cum să îmbinați dinamic coloanele într-un tabel Power Query

În acest tutorial, vom examina o întrebare interesantă care a fost ridicată pe despre cum să îmbinați dinamic un număr în schimbare de coloane într-un tabel Power Query. Puteți viziona videoclipul complet al acestui tutorial în partea de jos a acestui blog.

Acest scenariu tratează exporturile de date brute care fac ca datele să se reverse într-un număr necunoscut de coloane adiacente. Când te uiți la exemplu, poți vedea că descrierea s-a revărsat în coloana 4, iar Descrierea 2 a fost împărțită în două coloane adiacente. Dar nu va fi întotdeauna cazul. În următorul ciclu, acest număr de coloane s-ar putea schimba.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Înainte de a trece la soluție, să examinăm codul M pe care Power Query îl generează atunci când îmbinați coloanele.

Cuprins

Codul M din tabelul Power Query

Există câteva moduri de a îmbina coloanele. Una este să selectați atât coloana de descriere, cât și apăsând în jos tasta Shift sau tasta control, apoi selectați și coloana 4. Apoi, faceți clic dreapta și alegeți Îmbinare coloane .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Sau, în fila Transformare , selectați îmbinare coloane . Și va apărea această casetă de dialog, care vă permite să selectați Separatorul.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

În caseta pop-up, alegeți Tab și puteți introduce un nou nume de coloană. În acest caz, l-am numit Descriere.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

În bara de formule, vedem codul M pe care l-a creat acest pas de transformare.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Dacă bara de formule nu este vizibilă pe ecran, accesați fila Vizualizare și activați-o.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Deci, funcția pe care Power Query o folosește pentru a îmbina coloanele este Table.CombinedColumns . Primul parametru necesar este un tabel. Tabelul este returnat de pasul anterior din codul nostru, așa că în Pașii aplicați, veți vedea că acesta se numește Sursă .

Apoi, a codificat greu numele coloanelor într-o listă. Aici vedeți inițializatorii de listă și între valorile în text, descrierea numelui coloanei și coloana 4 a numelui coloanei. Apoi, apelează o altă funcție M pentru a combina valorile text din acele coloane.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Și, în sfârșit, trece noul nume de coloană ca text, astfel încât să putem ajusta asta.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Deci, dacă dorim ca această funcție să îmbine în mod dinamic un număr de coloane în schimbare, va trebui să schimbăm acea a doua valoare a parametrului care conține acum o listă de nume de coloane codificate.

Îmbinarea unui număr în schimbare de coloane într-un tabel Power Query

Voi reveni la interogarea mea de date brute și, dacă ne uităm mai atent la numele coloanelor, vedem că fiecare dintre coloanele de scurgere este anonimă. Nu au nume proprii, dar toate încep cu coloana de text, urmată de un număr. Să vedem dacă putem folosi asta. În primul rând, voi crea o referință făcând clic dreapta aici și selectând Referință .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Și pentru a obține numele coloanelor în bara de formule, pot adăuga Table.ColumnNames . Această funcție returnează o listă cu toate numele coloanelor din acel tabel. Să transformăm asta înapoi într-un tabel făcând clic pe To Table .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

În această casetă pop-up, faceți clic pe OK.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Apoi, în fila Adăugați coloană , voi selecta Format , apoi Decupați .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Acum, aceasta nu este o transformare pe care vreau să o fac, dar generează cea mai mare parte a codului M pentru mine. Tot ce trebuie să fac este să înlocuiesc acea funcție de tăiere cu propria mea logică .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Deci, în bara de formule, în loc de Text.Trim , putem spune dacă Text.StartsWith , apoi îl îndreptăm către Coloana 1 , iar eu îl voi copia imediat. Vrea textul pe care îl căutăm, așa că acesta va fi Coloana. Deci, dacă începe cu o coloană de text, atunci vrem „null” – pentru orice altceva, vrem orice se află în Coloana 1. De asemenea, putem redenumi acea coloană, așa că în interiorul barei de formule, în loc de Trim, să-i spunem GroupColumn .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Acum, tot ce trebuie să facem este să le umplem la aceste valori. Așa că voi face clic dreapta pe antetul meu, voi selecta Umplere și Jos .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Deci data viitoare când vor veni date și numărul de coloane s-a modificat, acest grup le va prelua automat.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Să redenumim această interogare, o voi numi grupuri de coloane.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Să ne asigurăm că încărcarea sa a fost dezactivată, deoarece aceasta este doar o interogare de sprijin.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Pot face referire la această interogare de sprijin și o voi redenumi mai târziu. Să lăsăm asta deocamdată. Deci, dacă vă amintiți, am început prin a îmbina două coloane și asta a creat o listă codificată cu numele coloanelor , dar acum putem filtra pe Descriere în GroupColumn .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Deci, dacă facem acel filtru pe Descrierea din interiorul Coloanei 1, obținem coloanele care îndeplinesc aceste criterii.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Totuși, acesta este un tabel și nu o listă. Trebuie să extragem tot ce rămâne în prima coloană, deoarece trebuie să includem acele coloane în operația noastră de îmbinare. Așadar, pentru a face asta, putem face clic dreapta pe antetul Coloanei 1 și selectați Detaliere .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Și acum obținem o listă. Deci, să dăm acestei interogări un nume propriu ( ListDescr ) și să verificăm dacă este dezactivată de la încărcare.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Acum putem să ne întoarcem la interogarea Rezultat și să înlocuim al doilea argument aici cu lista noastră dinamică. Deci aici, putem face referire la ListDescr .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Să repetăm ​​acest lucru și pentru Descrierea 2. Voi accesa interogarea mea ColumnGroups. Voi crea o altă referință și voi selecta coloanele de care am nevoie. Apoi voi filtra Descrierea 2, care va returna aceste trei coloane. Voi face clic dreapta pe antetul meu și voi selecta Detaliere și voi redenumi și această interogare ( ListDescr2 ).

Apoi, voi reveni la interogarea Rezultatul, selectez coloana Description2 și apăs pe shift sau pe control pentru a selecta și următoarea coloană (coloana2). Voi face clic dreapta pe antet și voi alege Îmbinare coloane .

Cum să îmbinați dinamic coloanele într-un tabel Power Query

În caseta pop-up, voi alege Tab ca Separator și voi numi aceasta Description2.

Cum să îmbinați dinamic coloanele într-un tabel Power Query

Voi schimba doar numele coloanei aici pe bara de formule. Voi schimba și acea listă hard-coded din lista pe care tocmai am creat-o. Și acum, după cum puteți vedea, aceasta a preluat și coloana 8 pe care am exclus-o anterior.

Cum să îmbinați dinamic coloanele într-un tabel Power Query


Cum să îmbinați interogări în LuckyTemplates
Parametrii de interogare LuckyTemplates: optimizarea tabelelor
Sortarea coloanelor tabelului de date în LuckyTemplates

Concluzie

În acest blog, v-am arătat cum să utilizați codurile M în Power Query pentru a îmbina în mod dinamic coloanele. Nu este dificil atâta timp cât ești familiarizat cu modul în care funcționează Power Query și ce coduri M să folosești.

Sper că ți-a plăcut asta. Vă rugăm să consultați linkurile de mai jos pentru mai mult conținut similar.

Toate cele bune!

Melissa

Leave a Comment

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Cum să salvați și să încărcați un fișier RDS în R

Cum să salvați și să încărcați un fișier RDS în R

Veți învăța cum să salvați și să încărcați obiecte dintr-un fișier .rds în R. Acest blog va trata, de asemenea, cum să importați obiecte din R în LuckyTemplates.

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

În acest tutorial despre limbajul de codare DAX, aflați cum să utilizați funcția GENERATE și cum să schimbați în mod dinamic titlul unei măsuri.

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Acest tutorial va acoperi cum să utilizați tehnica Multi Threaded Dynamic Visuals pentru a crea informații din vizualizările dinamice de date din rapoartele dvs.

Introducere la filtrarea contextului în LuckyTemplates

Introducere la filtrarea contextului în LuckyTemplates

În acest articol, voi trece prin contextul filtrului. Contextul de filtrare este unul dintre subiectele majore despre care orice utilizator LuckyTemplates ar trebui să învețe inițial.

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Vreau să arăt cum serviciul online LuckyTemplates Apps poate ajuta la gestionarea diferitelor rapoarte și informații generate din diverse surse.

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Aflați cum să vă calculați modificările marjei de profit folosind tehnici precum măsurarea ramificării și combinarea formulelor DAX în LuckyTemplates.

Idei de materializare pentru cache-urile de date în DAX Studio

Idei de materializare pentru cache-urile de date în DAX Studio

Acest tutorial va discuta despre ideile de materializare a cache-urilor de date și despre modul în care acestea afectează performanța DAX-ului în furnizarea de rezultate.

Raportare de afaceri folosind LuckyTemplates

Raportare de afaceri folosind LuckyTemplates

Dacă încă utilizați Excel până acum, atunci acesta este cel mai bun moment pentru a începe să utilizați LuckyTemplates pentru nevoile dvs. de raportare a afacerii.

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți