Començant amb DAX a Power BI

Aquest bloc d’Edureka us ajuda a començar amb els conceptes bàsics de Power BI DAX o Expressions d’anàlisi de dades si no sou nou a Power BI amb la sintaxi i els exemples.

Aquest bloc està dissenyat essencialment per a usuaris que no coneixen i està pensat per donar-vos un recorregut fàcil i ràpid per un llenguatge de fórmules anomenat Expressions d’anàlisi de dades (DAX) .Si esteu familiaritzat amb les funcions de MS Excel o bé , moltes de les fórmules d’aquest Fonaments bàsics de Power BI DAX l'article apareixerà similar a vosaltres.

Dit això, aquí teniu els conceptes que formen part integral de tots , després d'aprendre el que hauríeu de comprendre bé els conceptes més fonamentals de DAX.





Conceptes bàsics de Power BI DAX: què és DAX?

Comencem, doncs, amb els conceptes bàsics de Power BI DAX, oi?

És bastant fàcil crear informes amb l’escriptori Power BI, que mostrarà informació valuosa de seguida.



Però, i si heu d’analitzar el percentatge de creixement de totes les categories de productes per a tots els diferents intervals de dates? O bé, heu de calcular el creixement anual de la vostra empresa en comparació amb els gegants del mercat?

Aprendre DAX us ajudarà a treure el màxim profit del vostre i resoldre problemes empresarials reals.

DAX inclou funcions, operadors i constants que es poden introduir en forma de fórmules per calcular valors amb l'ajut de les dades ja presents al vostre model.



El Power BI DAX inclou una biblioteca de més de 200 funcions, operadors i construccions. La seva biblioteca proporciona una flexibilitat immensa en la creació de mesures per calcular els resultats per a qualsevol necessitat d’anàlisi de dades.

Conceptes bàsics de Power BI DAX: com funciona?

En primer lloc, deixeu-me explicar-vos com funciona.En la seva major part, definirem la nostra comprensió de Power BI DAX al voltant de tres conceptes fonamentals: Sintaxi , Context , i Funcions .

Per descomptat, hi ha altres conceptes importants aquí, però la comprensió d’aquests tres proporcionarà la millor base sobre la qual construireu les vostres habilitats.

Sintaxi

El Sintaxi comprèn diversos components que formen una fórmula i com s’escriu. Lconsulteu aquesta senzilla fórmula DAX.

Quan s’intenta entendre una fórmula DAX, sovint és útil desglossar cadascun dels elements en un idioma que es pensa i es parla cada dia. Per tant, aquesta fórmula inclou els següents elements de sintaxi:

Sintaxi - Power BI DAX - Edureka

I. Vendes totals és el nom de la mesura.

II. El operador de signe igual (=) indica el començament de la fórmula.

III. SUMA suma tots els números de la columna, Vendes [Quantitat de vendes] .

IV. Hi ha aquests parèntesis () que envolten una expressió que conté un o més arguments. Totes les funcions requereixen almenys un argument.

V. Vendes és la taula de referència.

NOSALTRES. An argument passa un valor a una funció. La columna de referència [Quantitat de vendes] és un argument amb el qual, la funció SUM coneix la columna en què ha d'agregar un SUM.

En poques paraules, podeu llegir-lo com: ' Per a la mesura anomenada Vendes totals, calculeu (=) la SUMA dels valors de la columna [Quantitat de vendes] de la taula Vendes. '

& piquesL'editor DAX de Power BI inclou una funció de suggeriments, que us ajuda a crear fórmules correctes sintàcticament suggerint-vos els elements adequats.

Context

Context és un dels conceptes DAX més importants. Quan es parla de context, es pot referir a un dels dos tipus Context de la fila i Filtre el context .

S'utilitza predominantment mentre es parla de Mesures , el Context de fila es considera més fàcilment com la fila actual. S’aplica sempre que una fórmula té una funció que aplica filtres per identificar una sola fila en una taula.

Filtre-context és una mica més difícil d’entendre que el context de fila. Podeu pensar més fàcilment en el context-filtre com un o més filtres aplicats en un càlcul. ElEl filtre-context no existeix en lloc del context de fila. Més aviat, s’aplica a més de la primera. Mireu la següent fórmula DAX.

Aquesta fórmula inclou els elements de sintaxi següents:

I. El nom de la mesura Vendes a la botiga .

II. El operador de signe igual (=) indica el començament de la fórmula.

III. El CALCULAR La funció avalua una expressió com a argument.

IV. Parèntesi () envolten una expressió que conté un o més arguments.

V. Una mesura [Vendes totals] a la mateixa taula que una expressió.

NOSALTRES. A coma (,) separa el primer argument d'expressió de l'argument del filtre.

ESTÀS VENINT. La columna de referència completament qualificada, Canal [ChannelName] és el nostre context de fila. Cada fila d'aquesta columna especifica un canal, una botiga, en línia, etc.

VIII. El valor particular, Botiga s’utilitza com a filtre. Aquest és el nostre context de filtre.

Aquesta fórmula assegura això la mesura de vendes totals es calcula només per a les files de la columna Channel [ChannelName] amb el valor 'Store', com a filtre.

Funcions

Funcions són fórmules predefinides, estructurades i ordenades. Realitzen càlculs utilitzant arguments els va passar. Aquests arguments poden ser números, text, valors lògics o altres funcions.

Fonaments bàsics de Power BI DAX: Columnes i mesures calculades

En aquest bloc, ens centrarem en les fórmules Power BI DAX que s’utilitzen en els càlculs Mesures i Columnes calculades .

Columnes calculades

Quan creeu un model de dades a Power BI Desktop, podeu ampliar una taula creant noves columnes. El contingut de les columnes es defineix mitjançant una expressió DAX, avaluada fila per fila o en el context de la fila actual de la taula.

En els models de dades per a DAX, però, totes les columnes calculades ocupen espai a la memòria i es calculen durant el processament de la taula.

Aquest comportament és útil per obtenir una millor experiència d'usuari, però utilitza una RAM preciosa i, per tant, és un mal hàbit en la producció, ja que cada càlcul intermedi s'emmagatzema a la RAM i malgasta un espai preciós.

Mesures

Hi ha una altra manera de definir els càlculs en un model DAX, útil si heu d’operar en valors agregats en lloc de fila per fila. Aquests càlculs són mesures. Un dels requisits de DAX és que cal definir una mesura en una taula. Tot i això, la mesura no pertany realment a la taula. Per tant, podeu moure una mesura d’una taula a una altra sense perdre la seva funcionalitat.

Columnes calculades vs mesures

Les mesures i les columnes calculades utilitzen expressions DAX. La diferència és el context de l’avaluació. Una mesura s’avalua en el context de la cel·la avaluada en un informe o en una consulta DAX, mentre que una columna calculada es calcula al nivell de fila dins de la taula a la qual pertany.

Fins i tot si tenen un aspecte similar, hi ha una gran diferència entre les columnes calculades i les mesures. El valor d'una columna calculada es calcula durant l'actualització de les dades i utilitza la fila actual com a context que no depèn de la interacció de l'usuari a l'informe.

Per tant, heu de definir una columna calculada sempre que vulgueu fer el següent

  • Col·loqueu els resultats calculats en un tallador o vegeu els resultats en files o columnes en una taula dinàmica (a diferència de l'àrea de valors) o en els eixos d'un gràfic o utilitzeu el resultat com a condició de filtre en una consulta DAX.
  • Definiu una expressió estrictament lligada a la fila actual. Per exemple, Preu * La quantitat no pot funcionar en una mitjana ni en una suma de les dues columnes.
  • Classifiqueu text o números. Per exemple, un interval de valors per a una mesura.

Una mesura funciona a partir d’agregacions de dades definides pel context actual, que depèn del filtre aplicat a l’informe, com ara la selecció de talls, files i columnes en una taula dinàmica, o bé eixos i filtres aplicats a un gràfic.

Per tant, heu de definir una mesura sempre que vulgueu mostrar els valors de càlcul resultants que reflecteixin les seleccions dels usuaris, com ara

  • Quan es calcula el percentatge de beneficis d’una determinada selecció de dades.
  • Quan calculeu les relacions d’un producte en comparació amb tots els productes, però mantenint el filtre per any i per regió.

Fonaments bàsics de Power BI DAX: Tipus de funcions a DAX

1. Funcions agregades

MIN

Aquesta funció DAX rgenera el valor numèric mínim en una columna o entre dues expressions escalars.

Sintaxi

MIN()

Exemple

=MIN([ResellerMargin])

MINA

Aquesta funció DAX rgenera el valor mínim en una columna, inclosos els valors lògics i els números representats com a text.

Sintaxi

MINA()

Exemple

=MINA(([Codi Postal])

MINX

Torna aquesta funció DAXel valor numèric mínim que resulta de l'avaluació d'una expressió per a cada fila d'una taula.

Sintaxi

MINX(

,)

Exemple

=MINX(FILTRE(InternetSales, InternetSales [SalesTerritoryKey] =5), InternetSales [Càrrega] + InternetSales [TaxAmt])

MÀX

Aquesta funció DAX rgenera el valor màxim en una columna, inclosos els valors lògics i els números representats com a text.

Sintaxi

MÀX()

java split string múltiples delimitadors

Exemple

=MÀX([ResellerMargin])

MÀX

Aquesta funció DAX rgenera el valor màxim en una columna, inclosos els valors lògics i els números representats com a text.

Sintaxi

MÀX()

Exemple

=MÀX(([Codi Postal])

MAXX

Torna aquesta funció DAXel valor numèric màxim que resulta de l'avaluació d'una expressió per a cada fila d'una taula.

Sintaxi

MAXX(

,)

Exemple

=MAXX(FILTRE(InternetSales, InternetSales [SalesTerritoryKey] =5), InternetSales [Càrrega] + InternetSales [TaxAmt])

SUMA

Aquesta funció DAX adds tots els números d'una columna.

Sintaxi

SUMA()

Exemple

=SUMA(Vendes [oficina])

MITJANA

Aquesta funció DAX rmodifica la mitjana aritmètica dels valors d'una columna.

Sintaxi

MITJANA()

Exemple

=MITJANA(InternetSales [ExtendedSalesAmount])

sumx

Aquesta funció DAX rgenera la suma d'una expressió avaluada per a cada fila d'una taula.

Sintaxi

sumx(

,)

Exemple

=sumx(FILTRE(InternetSales, InternetSales [SalesTerritoryID] =5), [Càrrega])

AVERAGEX

Aquesta funció DAX ccalcula la mitjana aritmètica d'un conjunt d'expressions avaluades sobre una taula.

Sintaxi

AVERAGEX(

,)

Exemple

=AVERAGEX(InternetSales, InternetSales [Càrrega] + InternetSales [TaxAmt])

2. Funcions de recompte

DISTINCTCOUNT

Aquesta és una funció DAX que s’utilitza per retornar el recompte diferent d’elements d’una columna. Per tant, si hi ha diversos números del mateix element, aquesta funció el comptarà com a element únic.

Sintaxi

DISTINCTCOUNT()

Exemple

=DISTINCTCOUNT(ResellerSales_USD [SalesOrderNumber])

COMPTE

Aquesta és una funció DAX que s’utilitza per retornar el recompte d’elements d’una columna. Per tant, si hi ha diversos números del mateix ítem, aquesta funció el comptarà com a ítems separats i no com a ítem únic.

Sintaxi

COMPTE()

Exemples

=COMPTE([Data d'enviament])

COUNTA

Aquesta és una funció DAX que s’utilitza per retornar el recompte d’elements d’una columna que no està buida.

Sintaxi

COUNTA()

Exemple

=COUNTA('Revenedor' [Telèfon])

CONTES

Aquesta és una funció DAX quecompta el nombre de files de la taula especificada o d'una taula definida per una expressió.

Sintaxi

CONTES(

)

Exemple

=CONTES('Comandes')

COUNTBLANK

Aquesta és una funció DAX quecompta el nombre de cel·les en blanc d'una columna.

Sintaxi

COUNTBLANK()

Exemple

=COUNTBLANK(Distribuïdor [BankName])

3. Funcions Data-Hora

DATA

Aquesta funció DAX rmodifica la data especificada en format Data-Hora.

Sintaxi

DATA(<curs>,<mes>,<dia>)

Exemple

=DATA(2019,12, 17)

HORES

Aquesta funció DAX rmodifica l’hora especificada com a número de 0 a 23 (de 12:00 a 11:00).

Sintaxi

HORES()

Exemple

=HORES('Comandes' [TransactionTime])

AVUI

Aquesta funció DAX rmodifica la data actual.

Sintaxi

AVUI()

ARA

Aquesta funció DAX rmodifica la data i l'hora actuals en format Data-Hora.

Sintaxi

ARA()

EOMONTH

Aquesta funció DAX rmodifica la data en format Data-Hora de l'últim dia del mes, abans o després d'un nombre especificat de mesos.

Sintaxi

EOMONTH(,)

Exemple

=EOMONTH('3 de març de 2008',1.5)

4. Funcions matemàtiques

SECCIÓ

Aquesta funció DAX rmodifica el valor absolut del nombre indicat.

Sintaxi

SECCIÓ()

Exemple

=ABS ([Preu concessionari] - [Preu llista])

EXP

Aquesta funció DAX rmodifica el valor de e elevat a la potència del nombre donat.

Sintaxi

EXP()

Exemple

= EXP ([Potència])

FET

Aquesta funció DAX rmodifica el factorial d’un nombre.

Sintaxi

FET()

Exemple

= FET ([Valors])

LN

Aquesta funció DAX rmodifica el registre natural del nombre donat.

Sintaxi

LN()

Exemple

= LN ([Valors])

REGISTRE

Aquesta funció DAX rmodifica el registre amb la base del número donat.

Sintaxi

REGISTRE(,)

Exemple

Tots els següents retornen el mateix resultat, 2.

= LOG (100,10)

= LOG (100)

= LOG10 (100)

Pi

Aquesta funció DAX rmodifica el valor de Pi.

Sintaxi

Pi()

PODER

Aquesta funció DAX rmodifica el valor del primer argument elevat al poder del segon argument.

Sintaxi

PODER(,<poder>)

Exemple

= POTÈNCIA (5,2)

QUOTIENT

Aquesta funció DAX realitza la divisió rmodifica la part sencera del quocient.

Sintaxi

QUOTIENT(,)

Exemple

= QUOTIENT (5,2)

SIGNE

Aquesta funció DAX retorna el signe d’un nombre determinat.

Sintaxi

SIGNE()

Exemple

= SIGN (([Preu de venda] - [Preu de cost]))

SQRT

Aquesta funció DAX rmodifica l’arrel quadrada del nombre donat.

Sintaxi

SQRT()

Exemple

= SQRT (25)

5. Funcions lògiques

I

Aquesta funció DAX realitza AND (conjunció) lògica en dues expressions. Perquè AND retorni cert, s'han de complir les dues condicions especificades.

Sintaxi

I(,)

Exemple

addició de dos números a Java

= SI (I (10>9, -10 <-1),'Tot cert','Un o més falsos'

Com que ambdues condicions, passades com a arguments, a la funció AND, són certes, la fórmula retorna 'Tot vertader'.

O

Aquesta funció DAX realitza OR (disjunció) lògica en dues expressions. Perquè OR retorni cert, cal complir qualsevol de les dues condicions especificades.

Sintaxi

O(,)

Exemple

= SI (O (10>9, -10> -1),'Veritable','Fals'

Com que una de les condicions, passades com a arguments, a la funció OR és certa, la fórmula retorna 'Verdader'.

NO

Aquesta funció DAX realitza NO (negació) lògica en una expressió determinada.

Sintaxi

NO()

Exemple

= NOT ([CalculatedColumn1])

Per a cada fila de la columna calculada 1, la funció NOT retorna el contrari lògic del valor donat.

SI

Aquesta funció DAX prova una sèrie d'entrades per a la que compleix la condició especificada a l'argument.

Sintaxi

SI(prova_lògica>, valor_si_false)

Exemple

= IF ([Trucades]<200,'baix', IF ([Trucades]<300,'mitjà','alt'))

IFERROR

Aquesta funció DAX evalora una expressió i retorna un valor especificat si l'expressió retorna un error.

Sintaxi

IFERROR(valor, valor_if_error)

Exemple

classe mutable a l’exemple de java

= IFERROR (25/0,9999)

6. Funcions d'informació

ISBLANK

Aquesta funció DAXretorna TRUE o FALSE desprésccomprovant si un valor està en blanc.

Sintaxi

ISBLANK(<valor>)

Exemple

= IF (ISBLANK ('CalculatedMeasures' [PreviousYearTotalSales]), BLANK (), ('CalculatedMeasures' [Total Sales] - 'CalculatedMeasures' [PreviousYearTotalSales]) / 'CalculatedMeasures' [PreviousYotTotalSales])

NÚMERO

Aquesta funció DAXretorna TRUE o FALSE desprésccomprovant si un valor és numèric.

Sintaxi

NÚMERO(<valor>)

Exemple

= IF (ISNUMBER (0),'És número','No és número')

ISTEXT

Aquesta funció DAXretorna TRUE o FALSE desprésccomprovant si un valor és un text.

Sintaxi

ISTEXT(<valor>)

Exemple

= IF (ISTEXT ('text'),'És text','No és text')

ISNONTEXT

Aquesta funció DAXretorna TRUE o FALSE desprésccomprovant si un valor no és text.

Sintaxi

ISNONTEXT(<valor>)

Exemple

= IF (ISNONTEXT ('text'),'No és text','És text')

ISERROR

Aquesta funció DAXretorna TRUE o FALSE desprésccomprovant si un valor és un error.

Sintaxi

ISERROE(<valor>)

Exemple

= IF (ISERROR (SUM ('ResellerSales_USD') [SalesAmount_USD]) / SUM ('InternetSales_USD' [SalesAmount_USD])), BLANK (), SUM ('ResellerSales_USD' [SalesAmount_USD]) / SUM ('InternetSales_USD') [SalesAmount]

7. Funcions de text

CONCATENIR

Aquesta funció DAX joina dues cadenes de text en una.

Sintaxi

CONCATENIR(,)

Exemple

= CONCATENAR ('Hola', 'Món')

CONCATENATEX

Aquesta funció DAXel resultat d'una expressió avaluada per a cada fila d'una taula.

Sintaxi

CONCATENATEX(

,, [delimitador])

Exemple

= CONCATENATEX (Empleats, [FirstName] & '' & [LastName], ',')

FIXAT

Aquesta funció DAX rAfegeix un número al nombre especificat de decimals i retorna el resultat com a text.

Sintaxi

FIXAT(,,)

Exemple

= FIXAT ([PctCost],3,1)

REPOSA

Aquesta funció DAXsubstitueix una part d'una cadena de text, en funció del nombre de caràcters que especifiqueu, per una cadena de text diferent.

Sintaxi

REPOSA(,,,)

Exemple

= REPLACE ('Productes nous' [Codi de producte],1,2,'OB')

CERCA

Aquesta funció DAX rmodifica el nombre de caràcters en què es troba per primera vegada una cadena de text específica.

Sintaxi

CERCA(, [, [] [,]])

Exemple

= CERCA ('n','impressora')

La fórmula retorna 4 perquè 'n' és el quart caràcter de la paraula 'impressora'.

SUPERIOR

Torna aquesta funció DAXuna cadena de text en majúscules.

Sintaxi

SUPERIOR()

Exemple

= MAJOR (['Productes nous' [Codi de producte])

Conceptes bàsics de Power BI DAX: crear la primera mesura

Requisit previ: Haureu d’obrir aquest fitxer de Power BI Desktop .

Com que suposo que aquest serà el vostre primer, escriuré aquest detall amb gran detall perquè el seguiu.

  1. A la llista de camps del fitxer Vista d'informes , feu clic amb el botó dret al ratolí Vendes taula, seguida de la Nova mesura .

  2. Substitueix Mesura escrivint un nom de mesura nou Vendes del trimestre anterior, al Barra de fórmules .

  3. En aquesta fórmula, voleu utilitzar el fitxer CALCULAR funció. Per tant, després del signe igual, escriviu les primeres lletres CAL i, a continuació, feu doble clic a la funció que vulgueu utilitzar.

  4. La funció CALCULAR té almenys dos arguments. La primera és l’expressió a avaluar i la segona és a Filtre .

  5. Després de l’obertura parèntesi ( per al CALCULAR funció, tipus SUMA seguit d'un altre parèntesi d'obertura ( per passar un argument al SUMA funció.

  6. Comenceu a escriure sal i, a continuació, seleccioneu Vendes [Quantitat de vendes] , seguit d'un parèntesi de tancament ) . Aquest és el primer argument d'expressió per al nostre CALCULAR funció.

  7. Escriviu a coma (,) seguit d'un espai per especificar el primer filtre i, a continuació, escriviu TRIMESTRE ANTERIOR . Aquest serà el nostre filtre.

  8. Fareu servir el TRIMESTRE ANTERIOR funció d'intel·ligència del temps per filtrar SUMA resultats del trimestre anterior.

  9. Després del parèntesi d'obertura ( per a la funció PREVIOUSQUARTER, escriviu Calendari [DataKey] .

  10. El TRIMESTRE ANTERIOR La funció té un argument, una columna que conté un interval de dates contigu. En el nostre cas, aquest és el DataKey de la taula Calendari.

  11. Assegureu-vos que tant els arguments que es passen al PREVIOUSQUARTER com a la funció CALCULAR estan tancats escrivint dos parèntesis tancats )) .

  12. La vostra fórmula ara hauria de ser semblant a la següent
    Vendes del trimestre anterior = CALCULAR (SUMA (Vendes [QuantitatVenda]), QUART ANTERIOR (Calendari [DataKey]))

  13. Feu clic a la marca de verificació de la barra de fórmules o premeu Retorn per validar la fórmula.

Un cop ho hàgiu afegit al vostre model, voilà! Acabeu de crear una mesura amb DAX, i no fàcil.

El que fa aquesta fórmula és calculeu les vendes totals del trimestre anterior, en funció dels filtres aplicats a un informe.

Per tant, anem a posar-ho Quantitat de vendes i el nostre nou Vendes del trimestre anterior mesurar en un gràfic i després afegir Curs i QuarterOfYear com Llescadores, obtindríem alguna cosa semblant a les següents

Ara que ja teniu una comprensió bàsica dels conceptes de Power BI DAX, podeu començar a crear fórmules DAX per a mesures pel vostre compte. De fet, pot ser una mica complicat aprendre, peròDAX existeix des de fa diversos anys ihi ha molts recursos disponibles al web. Després de llegir aquest bloc i fer una mica d’experimentació, podeu aprendre a trobar solucions empresarials mitjançant Power BI DAX.