See ajaveeb on sisuliselt mõeldud kasutajatele, kes pole esimesed ja see on mõeldud selleks, et saaksite kiiresti ja hõlpsalt läbi käia valemikeeles, mida nimetatakse Andmete analüüsi avaldised (DAX) .Kui olete funktsioonidega tuttav MS Excel või , paljud selles sisalduvad valemid Power BI DAXi põhitõed artikkel ilmub teile sarnaselt.
Seda öeldes on siin mõisted, mis moodustavad lahutamatu osa kõigist , pärast selle õppimist peaksite DAXi põhiprintsiipidest hästi aru saama.
- Power BI DAXi põhitõed: mis on DAX?
- Power BI DAXi põhitõed: kuidas see töötab?
- Power BI DAX-i põhitõed: arvutatud veerud ja mõõdud
- Power BI DAXi põhitõed: DAX-i funktsioonide tüübid
- Power BI DAXi põhitõed: esimese mõõtmise loomine
Power BI DAXi põhitõed: mis on DAX?
Alustame siis Power BI DAXi põhitõdedest, eks?
Power BI Desktopi abil on üsna lihtne koostada aruandeid, mis näitavad väärtuslikke teadmisi otse loomulikult.
Aga mis siis, kui peate analüüsima kõigi tootekategooriate kasvuprotsenti kõigis erinevates kuupäevavahemikes? Või peate arvutama oma ettevõtte aastakasvu võrreldes turuhiiglastega?
DAX-i õppimine aitab teil maksimaalselt ära kasutada ja lahendada tegelikke äriprobleeme.
DAX koosneb funktsioonidest, operaatoritest ja konstantidest, mille saab vormelites vormindada väärtuste arvutamiseks juba teie mudelis olevate andmete abil.
Power BI DAX sisaldab üle 200 funktsiooni, operaatori ja konstruktsiooni kogu. Selle raamatukogu pakub tohutult paindlikkust tulemuste arvutamiseks peaaegu kõigi andmete analüüsimiseks vajalike meetmete loomisel.
Power BI DAXi põhitõed: kuidas see töötab?
Kõigepealt lubage mul teile selgitada, kuidas see töötab.Peame raamistama oma arusaama Power BI DAX-ist kolme põhimõiste ümber: Süntaks , Sisu ja Funktsioonid .
Muidugi on siin ka muid olulisi mõisteid, kuid nende kolme mõistmine annab parima aluse, millele kavatsete oma oskused üles ehitada.
Süntaks
The Süntaks koosneb erinevatest valemi moodustavatest komponentidest ja selle kirjutamise viisist. Lvaadake seda lihtsat DAX-i valemit.
DAX-valemist aru saades on sageli kasulik jagada kõik elemendid keeleks, mida iga päev arvate ja räägite. Niisiis sisaldab see valem järgmisi süntaksielemente:
Mina Müük kokku on mõõtme nimi.
II. The võrdusmärgi operaator (=) tähistab valemi algust.
III. SUM liidab kõik veerus olevad numbrid, Müük [SalesAmount] .
IV. Neid on sulgudes () mis ümbritsevad ühte või mitut argumenti sisaldavat avaldist. Kõik funktsioonid nõuavad vähemalt ühte argumenti.
V. Müük on viidatud tabel.
MEIE. An argument edastab väärtuse funktsioonile. Viidatud veerg [Müügisumma] on argument, millega funktsioon SUM teab veergu, millele ta peab summeerima.
Lihtsamalt öeldes saate seda lugeda järgmiselt: ' Arvutage meetme nimega Kogumüük (=) väärtuste summa veerus [Müügisumma] tabelis Müük. '
& labidadPower BI DAX-i redaktor sisaldab soovituste funktsiooni, mis aitab teil luua süntaktiliselt õigeid valemeid, soovitades teile õigeid elemente.
Sisu
Sisu on üks olulisemaid 3 DAX-i kontseptsioonist. Kui räägitakse kontekstist, võib see viidata ühele kahest tüübist Rea kontekst ja Filtreeri kontekst .
Kasutatakse peamiselt rääkimise ajal Meetmed , Rida-kontekst mõeldakse kõige kergemini kui praegust rida. See kehtib alati, kui valemil on funktsioon, mis kasutab filtreid tabeli ühe rea tuvastamiseks.
Filter-kontekst on natuke raskemini mõistetav kui Rida-kontekst. Filtrikonteksti saate kõige lihtsamalt mõelda kui ühte või mitut arvutustes rakendatud filtrit. TheFiltrikonteksti pole rea-konteksti asemel olemas. Pigem kehtib see lisaks esimesele. Vaadake järgmist DAX-valemit.
See valem sisaldab järgmisi süntaksielemente:
Mina Mõõdu nimi Poemüük .
II. The võrdusmärgi operaator (=) tähistab valemi algust.
III. The ARVUTAMA funktsioon hindab avaldist argumendina.
IV. Parentees () ümbritseb avaldist, mis sisaldab ühte või mitut argumenti.
V. Mõõt [Müük kokku] avaldisena samas tabelis.
MEIE. TO koma (,) eraldab esimese avaldise argumendi filtri argumendist.
KAS SA TULED. Täielikult kvalifitseeritud viidatud veerg, Kanal [ChannelName] on meie Rida-kontekst. Iga veeru rida määrab kanali, poe, võrgu jne.
VIII. Konkreetne väärtus, Pood kasutatakse filtrina. See on meie Filter-Context.
See valem tagab seda kogu müügimõõtu arvutatakse filtrina ainult veeru Kanal [KanaliNimi] ridade jaoks, mille väärtus on „Pood“.
Funktsioonid
Funktsioonid on eelnevalt määratletud, struktureeritud ja järjestatud valemid. Nad teevad arvutusi kasutades argumendid neile edasi antud. Need argumendid võivad olla arvud, tekst, loogilised väärtused või muud funktsioonid.
Power BI DAXi põhitõed: Arvutatud veerud ja mõõdud
Selles blogis keskendume arvutustes kasutatavatele Power BI DAX-i valemitele aastal Meetmed ja Arvutatud veerud .
Arvutatud veerud
Andmemudeli loomisel Power BI Desktopis saate laiendada tabelit uute veergude loomisega. Veergude sisu määratletakse DAX-avaldisega, mida hinnatakse rea kaupa või kogu selle tabeli praeguse rea kontekstis.
DAX-i andmemudelites hõivavad aga kõik arvutatud veerud mälus ruumi ja arvutatakse tabeli töötlemise käigus.
See käitumine on abiks parema kasutuskogemuse saavutamisel, kuid see kasutab väärtuslikku RAM-i ja on seetõttu tootmises halb harjumus, kuna iga vahearvestus salvestatakse RAM-i ja raiskab väärtuslikku ruumi.
Meetmed
DAX-mudelis on arvutuste määratlemiseks veel üks viis, mis on kasulik juhul, kui peate rida-realt töötama mitte koondväärtustega. Need arvutused on mõõdud. Üks DAX-i nõuetest on see, et mõõt tuleb tabelis määratleda. Mõõt siiski tegelikult tabelisse ei kuulu. Nii saate mõõdu ühest tabelist teise liigutada, kaotamata selle funktsionaalsust.
Arvutatud veerud vs mõõdud
Mõlemad ja arvutatud veerud kasutavad mõlemad DAX-väljendeid. Erinevus on hindamise kontekst. Mõõdet hinnatakse aruandes või DAX-päringus hinnatud lahtri kontekstis, samas kui arvutatud veerg arvutatakse rea tasemel selles tabelis, kuhu see kuulub.
Isegi kui need näevad välja sarnased, on arvutatud veergude ja mõõtude vahel suur erinevus. Arvutatud veeru väärtus arvutatakse andmete värskendamise ajal ja see kasutab praegust rida kontekstina, mis ei sõltu kasutaja interaktsioonist aruandes.
Seega peate määratlema arvutatud veeru alati, kui soovite teha järgmist
- Pange arvutatud tulemused viilurisse või vaadake tulemusi liigendtabeli ridades või veergudes (erinevalt väärtuste alast) või diagrammi telgedes või kasutage tulemust DAX-päringu filtritingimusena.
- Määratlege avaldis, mis on rangelt seotud praeguse reaga. Näiteks ei saa Hind * Kogus töötada keskmise ega kahe veeru summa põhjal.
- Teksti või numbrite kategoriseerimine. Näiteks mõõdiku väärtuste vahemik.
Mõõt toimib praeguses kontekstis määratletud andmete kogumite põhjal, mis sõltuvad aruandes rakendatud filtrist - nt lõikuri, ridade ja veergude valik liigendtabelis või diagrammile rakendatud teljed ja filtrid.
Niisiis, peate määrama mõõtühiku alati, kui soovite kuvada arvutuslikke väärtusi, mis kajastavad kasutaja valikuid, näiteks
- Kui arvutate kasumiprotsendi teatud andmete valikul.
- Kui arvutate toote suhteid kõigi toodetega, kuid hoiate filtrit nii aasta kui ka piirkonna järgi.
Power BI DAXi põhitõed: Funktsioonide tüübid DAX-is
1. koondfunktsioonid
MIN
See DAX-funktsioon rsisestab veeru minimaalse arvväärtuse või kahe skalaarse avaldise vahele.
Süntaks
MIN()
Näide
=MIN([Edasimüüja marginaal])
MINA
See DAX-funktsioon rtagastab veeru minimaalse väärtuse, sealhulgas kõik tekstina esitatud loogilised väärtused ja numbrid.
Süntaks
MINA()
Näide
=MINA(([Postiindeks])
MINX
See DAX-funktsioon naasebminimaalne arvuline väärtus, mis tuleneb tabeli iga rea avaldise hindamisest.
Süntaks
Näide See DAX-funktsioon rAnnab veerus maksimaalse väärtuse, sealhulgas kõik tekstina esitatud loogilised väärtused ja numbrid. Süntaks Näide See DAX-funktsioon rAnnab veerus maksimaalse väärtuse, sealhulgas kõik tekstina esitatud loogilised väärtused ja numbrid. Süntaks Näide See DAX-funktsioon naasebmaksimaalne arvuline väärtus, mis tuleneb tabeli iga rea avaldise hindamisest. Süntaks Näide See DAX-funktsioon adds kõik veerus olevad numbrid. Süntaks Näide See DAX-funktsioon rannab veerus olevate väärtuste aritmeetilise keskmise. Süntaks Näide See DAX-funktsioon rmäärab tabeli iga rea jaoks hinnatud avaldise summa. Süntaks Näide See DAX-funktsioon carvutab tabeli kohal hinnatud avaldiste hulga aritmeetilise keskmise. Süntaks Näide See on DAX-funktsioon, mida kasutatakse veerus olevate üksuste erineva arvu tagastamiseks. Niisiis, kui samal elemendil on mitu numbrit, loeb see funktsioon selle üheks elemendiks. Süntaks Näide See on DAX-funktsioon, mida kasutatakse veerus olevate üksuste arvu tagastamiseks. Niisiis, kui samal elemendil on mitu numbrit, loeb see funktsioon seda eraldi üksustena ja mitte ühe üksusena. Süntaks Näited See on funktsioon DAX, mida kasutatakse üksuste arvu tagastamiseks veerus, mis pole tühi. Süntaks Näide See on DAX-funktsioon, misloeb ridade arv määratud tabelis või avaldisega määratletud tabelis. Süntaks Näide See on DAX-funktsioon, misloendab veerus tühjade lahtrite arvu. Süntaks Näide See DAX-funktsioon rsisestab määratud kuupäeva kuupäeva-kellaaja vormingus. Süntaks Näide See DAX-funktsioon rAnnab määratud tunni arvuna vahemikus 0 kuni 23 (kell 12.00–11.00). Süntaks Näide See DAX-funktsioon rennistab praeguse kuupäeva. Süntaks See DAX-funktsioon rpaneb praeguse kuupäeva ja kellaaja vormindama kuupäeva-kellaaja. Süntaks See DAX-funktsioon rsisestab kuupäeva kuupäeva ja kellaaja vormingus kuu viimasele päevale enne või pärast kindlat kuud. Süntaks Näide See DAX-funktsioon rAnnab antud arvu absoluutväärtuse. Süntaks Näide See DAX-funktsioon rannab e-väärtuse, mis on tõstetud antud arvu astmele. Süntaks Näide See DAX-funktsioon rannab arvu faktori. Süntaks Näide See DAX-funktsioon returnib antud arvu loomuliku logi. Süntaks Näide See DAX-funktsioon returnib logi antud numbri alusel. Süntaks Näide See DAX-funktsioon rannab Pi väärtuse. Süntaks See DAX-funktsioon rtagastab esimese argumendi väärtuse teise argumendi väärtuseks. Süntaks Näide See DAX-funktsioon täidab jaotust rAnnab jagatise täisarvu. Süntaks Näide See funktsioon DAX tagastab antud numbri märgi. Süntaks Näide See DAX-funktsioon rAnnab etteantud arvu ruutjuure. Süntaks Näide See DAX-funktsioon täidab loogilist AND (sidesõna) kahel avaldisel. AND-i tõeseks saamiseks peavad mõlemad täidetud tingimused olema täidetud. Süntaks Näide See DAX-funktsioon täidab loogilist VÕI (disjunktsiooni) kahel avaldisel. VÕI taastamiseks peab olema täidetud üks kahest nimetatud tingimusest. Süntaks Näide See DAX-funktsioon täidab antud avaldise loogilist EI (eitust). Süntaks Näide See DAX-funktsioon testib sisendite jada, mis vastab argumendis määratletud tingimusele. Süntaks Näide See DAX-funktsioon ehindab avaldist ja tagastab määratud väärtuse, kui avaldis tagastab vea. Süntaks Näide See DAX-funktsioontagastab pärast väärtust TRUE või FALSEckontrollides, kas väärtus on tühi. Süntaks Näide See DAX-funktsioontagastab pärast väärtust TRUE või FALSEckontrollides, kas väärtus on arvuline. Süntaks Näide See DAX-funktsioontagastab pärast väärtust TRUE või FALSEckontrollides, kas väärtus on tekst. Süntaks Näide See DAX-funktsioontagastab pärast väärtust TRUE või FALSEckontrollides, kas väärtus on tekstiväline. Süntaks Näide See DAX-funktsioontagastab pärast väärtust TRUE või FALSEckontrollides, kas väärtus on viga. Süntaks Näide See DAX-funktsioon joins kaks tekstistringi üheks. Süntaks Näide See DAX-funktsioontabeli iga rea jaoks hinnatud avaldise tulemus. Süntaks Näide See DAX-funktsioon rkõlab numbri määratud arvu kümnendkohtadeni ja tagastab tulemuse tekstina. Süntaks Näide See DAX-funktsioonasendab tekstistringi osa teie määratud tähemärkide arvu põhjal teise tekstistringiga. Süntaks Näide See DAX-funktsioon returneerib märkide arvu, millelt konkreetne tekstistring esimest korda leiti. Süntaks Näide See DAX-funktsioon naasebtekstistring suurtähtedega. Süntaks Näide Eeldus: Peate avama see antud Power BI Desktopi fail . Kuna ma eeldan, et see saab olema teie esimene, kirjutan selle natuke üksikasjalikult, et saaksite seda jälgida. Välja väljaloendis Aruandevaade paremklõpsake nuppu Müük tabel, millele järgneb Uus meede . Asenda Mõõda uue mõõtenime tippimisega Eelmise kvartali müük, aastal Vormelibaar . Selles valemis soovite kasutada ARVUTAMA funktsioon. Niisiis, pärast võrdusmärki sisestage paar esimest tähte CAL ja topeltklõpsake funktsiooni, mida soovite kasutada. Funktsioonil ARVUTA on vähemalt kaks argumenti. Esimene on väljend, mida tuleb hinnata, ja teine on a Filtreeri . Pärast avamist sulgudes ( jaoks ARVUTAMA funktsioon, tüüp SUM millele järgneb teine algussulg ( edastada SUM funktsioon. Alustage tippimist Sool ja seejärel valige Müük [SalesAmount] , millele järgneb sulg ) . See on esimene väljendargument meie jaoks ARVUTAMA funktsioon. Sisestage a koma (,) järgneb tühik esimese filtri määramiseks ja seejärel tippige EELMINE KVARTAL . See saab olema meie filter. Kasutate EELMINE KVARTAL ajaluure funktsioon filtreerimiseks SUM tulemused eelmise kvartali kohta. Pärast avasulgu ( funktsiooni PREVIOUSQUARTER jaoks tippige Kalender [DateKey] . The EELMINE KVARTAL Funktsioonil on üks argument, veerg, mis sisaldab külgnevat kuupäevavahemikku. Meie puhul on see DateKey veerus tabelis Kalender. Veenduge, et mõlemad PREVIOUSQUARTER-ile edastatavad argumendid ja funktsioon CALCULATE oleksid suletud, tippides kaks sulge )) . Teie valem peaks nüüd välja nägema umbes järgmine Klõpsake valemiribal linnukest või vajutage valemi kinnitamiseks sisestusklahvi Enter. Kui olete selle oma modellile lisanud, voila! Lõite just DAX-i abil mõõtmise, mis pole selle jaoks lihtne. Mida see valem teeb arvutage eelmise kvartali kogumüük sõltuvalt aruandes rakendatud filtritest. Niisiis, kui peaksime panema Müügisumma ja meie uus Eelmise kvartali müük mõõta graafikus ja seejärel lisada Aasta ja QuarterOfYear as Viilutajad, me saaksime midagi järgmistest Nüüd, kui teil on põhiteadmised Power BI DAX-i mõistetest, võite hakata DAX-i valemeid mõõtude jaoks ise looma. Tõepoolest, õppimine võib olla veidi keeruline, agaDAX on olnud juba mitu aastat javeebis on palju ressursse. Pärast selle ajaveebi läbilugemist ja väikest katsetamist saate Power BI DAX-i kaudu leida ärilahendusi.
MINX(
,)
=MINX(FILTER(Interneti-müük, Interneti-müük [SalesTerritoryKey] =5), Interneti-müük [kaubavedu] + Interneti-müük [TaxAmt])
MAX
MAX()
=MAX([Edasimüüja marginaal])
MAX
MAX()
=MAX(([Postiindeks])
MAXX
MAXX(
,)
=MAXX(FILTER(Interneti-müük, Interneti-müük [SalesTerritoryKey] =5), Interneti-müük [kaubavedu] + Interneti-müük [TaxAmt])
SUM
SUM()
=SUM(Müügikontor])
KESKMINE
mis on java muutujad
KESKMINE()
=KESKMINE(Interneti-müük [ExtendedSalesAmount])
sumx
sumx(
,)
=sumx(FILTER(Internetimüük, Interneti-müük [SalesTerritoryID] =5), [Kaubavedu])
AVERAGEX
AVERAGEX(
,)
=AVERAGEX(Interneti-müük, Interneti-müük [kaubavedu] + Interneti-müük [TaxAmt])
2. Count funktsioonid
DISTINCTCOUNT
DISTINCTCOUNT()
=DISTINCTCOUNT(Edasimüüja_USD [MüügiOrderNumber])
COUNT
COUNT()
=COUNT([Saatmise kuupäev])
KUNST
KUNST()
=KUNST(„Edasimüüja” [telefon])
COUNTROWS
COUNTROWS(
)
=COUNTROWS('Tellimused')
COUNTBLANK
COUNTBLANK()
=COUNTBLANK(Edasimüüja [panganimi])
3. Kuupäeva ja kellaaja funktsioonid
KUUPÄEV
KUUPÄEV(<aasta>,<kuu>,<päeval>)
=KUUPÄEV(2019. aasta,12, 17)
TUND
TUND()
=TUND(„Tellimused” [TransactionTime])
TÄNA
TÄNA()
KOHE
KOHE()
HOMME
HOMME(,)
=HOMME('3. märts 2008',1.5)
4. Matemaatilised funktsioonid
JAGU
JAGU()
=ABS ([edasimüüjahind] - [loendihind])
Kõlblik kuni:
Kõlblik kuni:()
= EXP ([võimsus])
FAKT
FAKT()
= FAKT ([Väärtused])
LN
LN()
= LN ([väärtused])
Logi sisse
Logi sisse(,)
Kõik järgnevad annavad sama tulemuse, 2.
= LOG (100,10)
= LOG (100)
= LOG10 (100)
PI
PI()
VÕIM
VÕIM(,<võim>)
= VÕIM (5,2)
QUOTIENT
QUOTIENT(,)
= QUOTIENT (5,2)
MÄRK
MÄRK()
= MÄRK (([müügihind] - [omahind]))
SQRT
SQRT()
= SQRT (25)
5. Loogilised funktsioonid
JA
JA(,)
= KUI (JA (10>9, -10 <-üks),'Kõik tõsi','Üks või mitu valet'
Kuna mõlemad argumendina funktsiooni AND jaoks edastatud tingimused on tõesed, tagastab valem 'Kõik tõesed'.
VÕI
VÕI(,)
= KUI (VÕI (10>9, -10> -üks),'Tõsi','Vale'
Kuna üks argumendina OR-funktsioonile edastatud tingimustest on tõene, tagastab valem 'True'.
MITTE
MITTE()
= EI ([Arvutatud veerg1])
Funktsioon EI arvutab iga arvutatud veeru1 rea puhul antud väärtuse loogilise vastupidise.
KUI
KUI(loogiline_test> ,, väärtus_f_vale)
= KUI ([kõned]<200,'madal', IF ([kõned]<300,'keskmine','kõrge'))
VIGA
VIGA(väärtus, väärtus_if_error)
= VIGA (25/0,9999)
6. Teabefunktsioonid
ISBLANK
ISBLANK(<väärtus>)
= IF (ISBLANK ('ArvestatudMõõdud' [EelmiseAastaEttemüük]), TÜHJAS (), ('ArvestatudMõõtmed' [Müük kokku] - 'ArvestatudMõõtmed' [EelmineAastaTotalSales]] / 'ArvestatudMeetmed' [EelmineAastaTotalSales])
ISNUMBER
ISNUMBER(<väärtus>)
= KUI (ISNUMBER (0),'Kas number','Ei ole number')
ISTEXT
ISTEXT(<väärtus>)
= KUI (ISTEXT ('tekst'),'Kas tekst','On tekstiväline')
ISNONTEXT
ISNONTEXT(<väärtus>)
= KUI (ISNONTEXT ('tekst'),'On tekstiväline','Kas tekst')
ISERROR
ISERROE(<väärtus>)
= KUI (ISERROR (SUM ('Edasimüüja müük_USD' [Müügisumma_USD]) / SUM ('Interneti-müük_USD' [Müügisumma_USD])), TÜHI (), SUM ('Edasimüüja_USD' [Müügisumma_USD]) / SUM ('Interneti-müügi_USD'] müük
7. Teksti funktsioonid
MÜÜA
MÜÜA(,)
= CONCATENATE ('Tere', 'Maailm')
CONCATENATEX
CONCATENATEX(
,, [eraldaja])
= CONCATENATEX (töötajad, [eesnimi] & '' & [perekonnanimi], ',')
FIKSEERITUD
FIKSEERITUD(,,)
= FIKSEERITUD ([PctCost],3,üks)
ASENDA
ASENDA(,,,)
= REPLACE ('Uued tooted' [tootekood],üks,2,'OB')
OTSING
OTSING(, [, [] [,]])
= OTSI ('n','printer')
Valem tagastab 4, kuna 'n' on sõnas 'printer' neljas märk.
Ülemine
Ülemine()
= UPPER (['Uued tooted' [tootekood])
Power BI DAXi põhitõed: esimese mõõtmise loomine
Eelmise kvartali müük = ARVUTA (SUM (Müük [Müügisumma]), EELMINE KVARTAL (Kalender [Kuupäevavõti]))