Løs en dataanalyseudfordring med LuckyTemplates Accelerator
Udvid dine rapportudviklingsevner ved at deltage i en dataanalyseudfordring. Acceleratoren kan hjælpe dig med at blive LuckyTemplates-superbruger!
Mange mennesker tror, at vi ikke kan udføre tilpasset sortering ved hjælp af DAX , men det er ikke sandt. DAX kan absolut garantere sortering, og det er faktisk ret nemt at gøre. I dagens blog vil jeg vise dig, hvordan du nemt kan gøre lige præcis det. Du kan se den fulde video af denne tutorial nederst på denne blog.
Indholdsfortegnelse
Vores datamodel
Lad os starte med en simpel datamodel. Vores datatabel har tre kampagner, analyseret ROI og omkostninger.
Som du kan se i tabellen, har de de samme omkostninger, men deres ROI er forskellige. Konceptet her er at vide, hvilke kampagner vi skal køre afhængigt af deres ROI'er for et givet budget.
LuckyTemplates Custom Sort: Brug af While-løkken
Lad os starte med et mål med en simpel while-løkke.
Vi sætter vores budget til 20000 og gemmer det i budgetvariablen ved hjælp af _Budget.
Og så bruger vi while-løkken ved at oprette en tabelvariabel VAR_Table .
Vi bruger såder går imod vores basistabel 4 og tilføjer en løbende totalkolonne ved hjælp af "_RT" .
Dernæst henter vi [Analyseret ROI] i vores nuværende række gemt som VAR_ROI . Så tager vi vores budget . Fra det trækker vi fra, filtrer Tabel 4 for det analyserede ROI, der er større end eller lig med det ROI, som vi henter for vores nuværende række, og tag [ Cost] .
Disse linjer vil tage det højeste ROI i den første række, derefter det næsthøjeste for den næste række, og så videre. Så i det væsentlige har vi en kolonne, der er en løbende total, der tæller ned til nul i negativer.
Så forlader vi vores while-løkke. Vi opretter vores FinalTable-variabel med VAR_FinalTable , hvor vi blot filtrerer vores tabelvariabel for den løbende total , der er større end eller lig med nul. Vi anvender dette filter, fordi alt under nul betyder, at vi er blevet negative, og vi er ude af budget.
Så kan vi bruge disse værdier. Vi inkluderer vores kolonner – kampagner, analyseret ROI og omkostninger – og tilføjer .
Vi kan vise dette kort- visuelt billede i udvælgelsesruden og se, at vi har vores Instagram og SEM, som er vores to højeste ROI'er.
Lad os tjekke vores originale tabel for at sammenligne resultaterne.
Vi kan se, at PPC faktisk har et lavere ROI end SEM og Instagram.
Men som du måske har bemærket, kom vores resultat ikke tilbage i den rigtige rækkefølge, hvor Instagrams 8.1 viste først før SEM's 8.15.
Anvendelse af LuckyTemplates sorteringsrækkefølge
Men hvad nu, hvis vi ønsker, at Instagram skal returneres først, fordi det har det højeste ROI og SEM, der returneres næst? Grundlæggende ønsker vi at garantere sorteringsrækkefølge. Dette bliver en lille smule vanskeligt, men det er ikke svært at forstå, hvordan man gør det.
Sådan skal vores funktion se ud, hvor den nederste sektion er den samme som while-løkken, vi havde tidligere.
Og for at garantere sorteringsrækkefølge, skal vi gøre lidt ekstra arbejde.
Igen starter vi med vores VAR_Budget , som vi sætter til 20000. Derefter opretter vi vores Count-variabel ved hjælp af VAR_Count I og anvender på tabel 4.
I den næste linje vil vi bruge CONCATENATEX- funktionen til at sammenkæde vores kolonner Kampagner, Analyseret ROI og Pris. Du kan bruge hvad som helst som en separator, så længe det ikke er i dine data, så i dette tilfælde, lad os bare bruge stjerner.
Så bruger vi et rørtegn (|) i den næste parameter efter priskolonnen. Vi bruger også VAR_Ordered til at sortere efter det analyserede ROI i faldende rækkefølge, hvilket betyder, at det højeste ROI vil være øverst.
Hvis vi ser på kommentarlinjen, står der, at koden vil give os resultatet i formatet som SEM*8.158*10000 | Instagram*8,1*10000 . Det vil også komme ud i rækkefølgen af det højeste ROI til det laveste ROI.
LuckyTemplates brugerdefineret sortering: Bruges til loop
Dette eksempel er interessant, fordi vi får en , while-løkke og alle mulige fede funktioner. Denne gang vil vi bruge for-løkken .
Tabel 1
I dette eksempel er Tabel1 vores for-løkke, og det, vi laver, er ADDCOLUMNS tilder går fra én til vores optælling med én skrevet som (1,_Count,1).
I vores Row bruger vi såfordi vi bruger rørkarakteren for at adskille rækkerne i vores tabel. Ved hjælp af PATHITEM griber vi derefter stien fra den Ordnede variabel, som er vores streng.
Vi bruger også Value , som er vores automatiske kolonne, der oprettes med GENERATESERIES , eller vores kalendere 1, 2, 3, 4, 5, indtil vi udtømmer antallet af rækker, vi har i vores tabel. Derefter returnerer vi det tilbage som tekst .
Det, vi har nu, er en garanteret sorteringsrækkefølge for vores tabel, som går fra den højeste ROI til den laveste. Så her er din DAX for at garantere sorteringsrækkefølge.
Tabel 2
Nu, for at få dette i et brugbart format, skal vi lave Tabel2 , hvor vi udvælger de enkelte kolonner fra vores streng, som vi har.
Lad os bruge endnu en ADDCOLUMNS til at tilføje til Tabel1, vores for-løkke. For Kampagner skal du oprette en kampagnekolonne og brugeat erstatte stjerner med rør. Derefter bruger vi PATHITEM på RowPath til at gribe det første element og returnere det som TEXT.
I kolonnen Analyseret ROI gør vi stort set det samme. ERSTAT stjerner med rør. Grib derefter det andet element på vores vej og returner det som TEKST. Vi gør dette, fordi PATHITEM af en eller anden grund lader os returnere som heltal eller tekst, men ikke decimaltal.
Det er lidt underligt, men vi kan løse det, fordi alt vi skal gøre er at tilføje nul, og DAX vil automatisk konvertere TEXT-strengen til en numerisk værdi.
Igen gør vi det samme for kolonnen Pris . Vi bruger SUBSTITUTE og PATHITEM til at få fat i det tredje element. Derefter, for at returnere et tal, tilføjer vi nul igen, fordi det er et helt tal i dette tilfælde.
Resten af vores kode er while-løkken, som vi diskuterede tidligere. Det, vi får nu, er vores garanterede sorteringsrækkefølge fra højeste til laveste kampagne.
Vores SEM var vores højest rangerede ROI for vores kampagne, og Instagram er den anden.
Konklusion
Ved at bruge mens og til loops brugte vi med succes LuckyTemplates tilpassede sortering i vores datamodel baseret på deres ROI'er – et bevis på, at DAX helt sikkert kan garantere sorteringsrækkefølge.
Det er vigtigt at sikre, at dine data er korrekt sorteret i DAX for præcist at analysere og visualisere dem. Du kan anvende det, du har lært i dette selvstudie, til at sortere dine data korrekt til din næste rapport.
Alt det bedste,
Greg Deckler
Udvid dine rapportudviklingsevner ved at deltage i en dataanalyseudfordring. Acceleratoren kan hjælpe dig med at blive LuckyTemplates-superbruger!
Lær, hvordan du beregner løbende totaler i LuckyTemplates ved hjælp af DAX. Løbende totaler giver dig mulighed for ikke at blive fanget af et individuelt resultat.
Forstå konceptet med variabler i DAX i LuckyTemplates og betydningen af variabler for, hvordan dine mål beregnes.
Lær mere om det brugerdefinerede visuelle kaldet LuckyTemplates Slope-diagrammet, som bruges til at vise stigning/fald for en enkelt eller flere metrics.
Opdag farvetemaerne i LuckyTemplates. Disse er afgørende for, at dine rapporter og visualiseringer kan se ud og fungere problemfrit.
Beregning af et gennemsnit i LuckyTemplates kan gøres på mange måder for at give dig præcise oplysninger til dine virksomhedsrapporter.
Lad os dykke ned i Standard LuckyTemplates-temaer og gennemgå nogle af de funktioner, der er indbygget i selve LuckyTemplates Desktop-applikationen.
I dette selvstudie lærer du, hvordan du bygger en brugerdefineret forklaring i en LuckyTemplates-kortvisual for at vise dine foretrukne farver og segmentering.
Lær, hvordan du opsætter et LuckyTemplates-baggrundsbillede ved hjælp af PowerPoint. Dette er en af mine teknikker til at skabe mine LuckyTemplates-rapporter.
I denne tutorial skal vi dykke ned i nogle indkøbsanalyser i en organisation ved at bruge en interagerende funktion og kraften i datamodellen.