SQLShack

Microsoft Power BI suportă două limbaje diferite, limbajul M și DAX (Data Analysis Expression), care pot fi utilizate pentru a filtra, gestiona și vizualiza datele.

M poate fi considerat un limbaj de formule de interogare și poate fi utilizat în Power BI Query Editor pentru a pregăti datele înainte ca acestea să fie încărcate în modelul Power BI.

Pe de altă parte, DAX este un limbaj de calcul analitic al datelor care poate fi utilizat pentru o analiză aprofundată a datelor în timpul fazei de vizualizare a datelor.

M și DAX nu depind unul de celălalt și urmează structuri și logici total diferite și au coduri de bază diferite. M și DAX nu pot fi utilizate simultan, deoarece limbajul M este utilizat în Query Editor, în timp ce DAX este utilizat în principal în modelul Data View.

Această postare pe blog vă va arăta cum diferă M și DAX unul de celălalt în Power BI, cu ajutorul unor exemple. Consultați acest articol pentru o introducere rapidă în DAX.

Importul setului de date

În această secțiune, vom importa un set de date fictiv pe care îl vom folosi pentru a executa interogările noastre în limbajul M și DAX. Pentru a face acest lucru, începeți prin a face clic pe butonul „Get data” (Obține date) din meniul de sus, așa cum se arată în următoarea captură de ecran.

Un nou dialog va enumera toate legăturile de date deschise în Power BI.

Introduceți web” în secțiunea de căutare și, foarte curând, va apărea o opțiune de date Web” și, de asemenea, o pictogramă va apărea în All data source options (Toate opțiunile de surse de date). Selectați opțiunea Web” și apoi faceți clic pe „connect” în partea de jos. Acest lucru este clar în captura de ecran de mai jos.

Va apărea fereastra de dialog pe care o puteți vedea în captura de ecran de mai jos. Acum trebuie să inserați URL-ul de mai jos în câmpul etichetat URL:

https://raw.githubusercontent.com/treselle-systems/customer_churn_analysis/master/WA_Fn-UseC_-Telco-Customer-Churn.csv

Faceți clic pe „OK” pentru a confirma atunci când acest lucru este făcut.

Iată o captură de ecran pentru referință:

Acest URL duce Power BI la Github, care deține fișierul de date CSV de care avem nevoie. Fișierul de date detaliază un set de date privind fluctuația de clienți din domeniul telecomunicațiilor. Acesta conține date despre clienții unei companii de telecomunicații, care au părăsit compania după o anumită perioadă.

În funcție de dimensiunea fișierului, este posibil să dureze ceva timp pentru a descărca datele de pe site-ul de la distanță.

Odată ce datele sunt descărcate, aveți două opțiuni: fie puteți importa direct datele în Data/Report View, fie puteți încărca mai întâi datele în Query Editor. Deoarece limbajul M funcționează în Query Editor, vom încărca mai întâi datele în Query Editor făcând clic pe „Transform Data”, așa cum se arată în următoarea captură de ecran:

Veți vedea că setul de date conține informații despre un client, cum ar fi sexul, vechimea, serviciul de telefonie, serviciul de internet, persoanele aflate în întreținere etc.

După ce faceți clic pe butonul Transform, ar trebui să vedeți următorul editor de interogare.

Diferențe între M Language și DAX

În secțiunea anterioară, am conectat Power BI la un set de date fictiv de pe GitHub. În această secțiune, veți vedea, cu ajutorul unor exemple, diferențele dintre limbajul M și DAX.

Limbajul M

În primul rând, vom vedea ce este M și cum este utilizat în Power BI. Așa cum am spus mai devreme, limbajul M este utilizat pentru a gestiona și filtra datele în editorul de interogări. Dacă ați închis editorul de interogări, îl puteți deschide făcând clic pe opțiunea „Edit Queries” (Editare interogări) din meniul de sus.

În editorul de interogări, singurul nume de tabel din panoul din stânga ecranului va fi tabelul dumneavoastră, așa cum se arată mai jos. Faceți clic pe tabelul de date „WA_Fn-UseC_-Telco-Customer-Churn” din panoul din stânga al editorului de interogări, așa cum se arată mai jos:

Pentru a vedea interogările în M. Selectați orice coloană, de exemplu, „Partner” și apoi faceți clic pe butonul „Remove Columns” din meniul de sus. Se va elimina coloana „Partener” din tabel, așa cum se arată mai jos:

În continuare, faceți clic pe opțiunea „View” (Vizualizare) din meniul de sus, așa cum este evidențiat în următoarea captură de ecran.

Faceți clic pe caseta de selectare „Formula Bar” (Bara de formule). Ar trebui să vedeți acum o interogare în bara de formule, așa cum este evidențiat în următoarea captură de ecran. Interogarea de aici este „= Table.RemoveColumns(#”Changed Type”,{„Partner”}). Această interogare este o interogare în limbaj M utilizată pentru a elimina coloana „Partener” din tabelul selectat. Puteți vedea că interogarea în limbaj M este mai asemănătoare cu o comandă SQL sau LINQ (Language Integrated Query) în C#.

Pentru a vedea toate interogările M executate anterior în setul dvs. de date, puteți face clic pe „View – Advanced Editor” (Vizualizare – Editor avansat), așa cum se arată în următoarea captură de ecran.

După ce faceți clic pe opțiunea „Advanced Editor” din meniul de sus, ar trebui să vedeți fereastra Advanced Editor, așa cum se arată mai jos. Fereastra Advanced Editor (Editor avansat) conține toate interogările în limbaj M pe care le-ați executat până acum în sesiunea curentă.

Puteți vedea că ultima interogare este cea care a eliminat coloana „Partener” din tabel. Înainte de aceasta, interogarea „Change Type” este utilizată pentru a atribui tipurile de date diferitelor coloane din setul de date. Iar înainte de aceasta, interogarea „Promoted Headers” este utilizată pentru a seta coloanele de antet. Dacă executați o altă interogare, aceasta va apărea în partea de jos a listei de interogări din „Advance Editor”.

Să încercăm să adăugăm o coloană simplă în tabelul de cărți și să vedem interogarea M pentru aceasta. Faceți clic pe opțiunea „Add Column -> Custom Column” (Adaugă coloană -> Coloană personalizată) din meniul din partea de sus a ferestrei, așa cum puteți vedea mai jos:

Ar trebui să vedeți fereastra de mai jos. Faceți clic pe coloanele „TotalCharges” și „MonthlyCharges” una câte una și apoi faceți clic pe butonul „Insert” pentru a le insera în fereastra editorului de interogări. În fereastra editorului de interogare, adăugați un semn „+” între numele celor două coloane și faceți clic pe butonul „OK”.

Ar trebui să vedeți o nouă coloană „Monthly-Total” adăugată în tabel, așa cum se arată mai jos. În bara de formule, puteți vedea, de asemenea, interogarea M generată pentru a crea coloana „Monthly-Total”. Coloana „Monthly-Total” afișează practic suma valorilor din coloanele „TotalCharges” și „MonthlyCharges”.

Acum, dacă deschideți din nou fereastra „Advanced Editor”, veți vedea interogarea utilizată pentru a adăuga coloana „Monthly-Total” în partea de jos a interogărilor din editorul avansat.

Acum știm cum funcționează limbajul M și cum arată acesta. În secțiunea următoare, vom încerca să creăm aceeași coloană „Monthly-Total 2” prin intermediul DAX (Data Analysis Expression).

Interogările DAX sunt executate în vizualizarea datelor; prin urmare, trebuie să mutăm datele din editorul de interogări în vizualizarea datelor. Pentru a face acest lucru, în editorul de interogări, faceți clic pe opțiunea „Close & Apply” (Închidere & Aplicare) din meniul de sus, așa cum se arată mai jos:

După ce faceți clic pe butonul „Close & Apply” (Închidere & Aplicare), se va deschide vizualizarea de date.

DAX (Expresie de analiză a datelor)

În această secțiune, vom vedea cum să adăugăm o nouă coloană la tabelul Books (Cărți) utilizând DAX. În Data View, faceți clic pe opțiunea „Modeling -> New Column” (Modelare -> Coloană nouă) din meniul de sus, așa cum se arată mai jos:

Ar trebui să vedeți următoarea fereastră după ce faceți clic pe opțiunea „New Column” (Coloană nouă). În bara de formule, puteți vedea numele implicit al coloanei. Puteți executa interogările DAX în această bară de formule.

Introduceți interogarea „Monthly-Total 2 = + ” în bara de formule și apăsați tasta „Enter”. După ce apăsați „Enter”, veți vedea o nouă coloană „Monthly-Total 2” care afișează suma valorilor din coloanele „TotalCharges” și „MonthlyCharges”.

Puteți vedea că interogările DAX sunt mai asemănătoare cu cele din MS Excel.

Concluzie

Limbajul M și DAX sunt cele două limbaje suportate de Power BI pentru a manipula, filtra și analiza datele. Deși ambele limbaje au funcționalități similare, ele funcționează independent unul de celălalt. M este utilizat pentru a preprocesa datele în interiorul editorului de interogări, în timp ce DAX este utilizat pentru a analiza datele după ce acestea sunt încărcate în modelul de vizualizare a datelor.

  • Autor
  • Postări recente
Ben Richardson conduce Acuity Training, un furnizor de frunte de instruire SQL în Marea Britanie. Acesta oferă o gamă completă de cursuri de formare SQL, de la cursuri introductive până la cursuri avansate de administrare și de formare în domeniul depozitelor de date – vezi aici pentru mai multe detalii. Acuity are birouri în Londra și Guildford, Surrey. De asemenea, el scrie ocazional pe blogul Acuity
Vezi toate postările lui Ben Richardson

Ultimele postări ale lui Ben Richardson (vezi toate)
  • Lucrul cu temele de raport Power BI – 25 februarie 2021
  • Power BI: Diagramele în cascadă și vizuale combinate – 19 ianuarie 2021
  • Power BI: Formatarea condiționată și culorile datelor în acțiune – 14 ianuarie 2021

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.