Olap Moving Average


Dette spørsmålet gjør vondt i hjernen min for å snakke om Forhåpentligvis kan jeg forklare det riktig. Jeg har følgende beregning definert i kuben min. Dette burde gi meg en 52-ukers etterfølgende sum av salg, og det gjør, men bare når kuben blir utvidet til en ukentlig visning i Excel Når den er rullet opp til en kvartalsvis eller YTD-visning, viser den summen av salget som skjedde i opprullet periode. Her er et skjermbilde som forklarer hva jeg mener. Hva jeg ikke forstår er årsaken til at kvartals - og periodemånedersopprullingen ikke inkluderer en helårsverdi av data. Hvis et års salgsverdi tilbake fra 1 1 2005 var 954 000, betyr det ikke at kvartalet 1, 2005 viser et år s verdi av salg er bare 252 000. Kan noen hjelpe meg med å forstå hva jeg ser Har jeg gjort noe galt Hvordan skriver jeg en rullende gjennomsnittlig beregning som er nøyaktig selv når den rulles opp. Skrevet 16. mars kl. 21 07. SQL Server Denali PowerPivot. Alberto Ferrari skrev allerede om å beregne bevegelige gjennomsnitt i DAX ved å bruke en beregnet kolonne I vil gjerne presentere en annen tilnærming her ved å bruke et beregnet mål For det bevegelige gjennomsnittet beregner jeg et daglig glidende gjennomsnitt de siste 30 dagene her. For mitt eksempel bruker jeg PowerPivot-arbeidsboken som kan lastes ned som en del av SSAS-tabellmodellprosjektene fra Denali CTP 3-prøvene. I dette innlegget utvikler jeg formelen trinnvis. Men hvis du har det travelt, vil du kanskje direkte hoppe til de endelige resultatene nedenfor. Med kalenderåret 2003 på filteret, datoen på kolonnene og salgsbeløpet fra tabellen Internett-salg i detaljene, ser prøvedataene ut som dette. I hver rads kontekst gir uttrykket Date Date den nåværende konteksten, dvs. datoen for denne raden. Men fra en beregnet beregning vi kan ikke referere til dette uttrykket da det ikke er noen nåværende rad for datatabellen, men vi må bruke et uttrykk som LastDate Date Date. So, for å få de siste tretti dager kan vi bruke dette uttrykket. Vi kan nå oppsummere vår internett salg for ea ch av disse dagene ved å bruke oppsummeringsfunksjonen. Summariser DatoerInPeriod Dato Dato, Siste Dato Dato, -30, DAG, Dato Dato SalgAmountSum Sum Internet Salgs Salgsbeløp. Og til slutt bruker vi DAX-funksjonen AverageX til å beregne gjennomsnittet av de 30 verdier. Salgsbeløp 30d avg GjennomsnittX Summariser DatesInPeriod Dato Dato, Siste Dato Dato, -30, DAG, Dato Dato SalgAmountSum Sum Internet Salgs Salgsbeløp, SalesAmountSum. Dette er beregningen som vi bruker i vår Internett Salg tabell som vist på skjermbildet nedenfor. Når du legger til denne beregningen til pivottabellen ovenfor, ser resultatet slik ut. Ved å se resultatet ser det ut til at vi ikke har noen data før 1. januar 2003 Den første verdien for glidende gjennomsnitt er identisk med dagen verdi det er ingen rader før den datoen Den andre verdien for det bevegelige gjennomsnittet er faktisk gjennomsnittet av de første to dagene og så videre Dette er ikke helt riktig, men jeg kommer tilbake til dette problemet om et sekund Skjermbildet sho ws beregningen for det bevegelige gjennomsnittet per 31. januar som gjennomsnittet av de daglige verdiene fra 2. januar til 31.Og beregnet beregning virker også bra når filtre blir brukt. I følgende skjermbilde brukte jeg to produktkategorier for dataseriene. vårt beregnede mål arbeider med høyere aggregeringsnivåer For å finne ut, bruker jeg kalenderhierarkiet på radene i stedet for datoen For enkelhet fjernet jeg semester - og kvartnivåer ved hjelp av Excel s pivottabellalternativer. Vis skjul feltalternativer. Hvis du kan se beregningen fungerer fortsatt bra Her er månedsaggregatet det glidende gjennomsnittet for den siste dagen i den aktuelle måneden. Du kan se dette klart for januarverdien på 14.215 01 vises også i skjermbildet ovenfor som verdien for 31. januar. Hvis dette var Virksomhetskravet som høres rimelig ut for et daglig gjennomsnitt, virker aggregasjonen fint på månedlig nivå ellers må vi finjustere vår beregning, og dette vil være et tema for meg Kommende post. Men selv om aggregeringen er fornuftig på månedlig nivå, hvis vi utvider denne visningen til dagsnivået, ser du at vårt beregnede mål bare returnerer salgsbeløpet for den dagen, ikke gjennomsnittet for de siste 30 dagene lenger. kan dette være Problemet er resultatet av konteksten der vi beregner summen vår, som fremhevet i følgende kode. Salgsbeløp 30d avg GjennomsnittX Summariser datointervall Dato Dato, Siste dato Dato, -30, DAG, Dato Dato SalgAmountSum Sum Internet Salg Salgsbeløp , SalesAmountSum. Since vi evaluerer dette uttrykket i løpet av den angitte datoperioden, er den eneste konteksten som overskrives her, datodato. I vårt hierarki bruker vi forskjellige attributter fra vår dimensjon Kalender År, Måned og Dag Måned Da denne konteksten fortsatt er tilstede , beregningen blir også filtrert av disse attributter Og dette forklarer hvorfor vi dagens kontekst fortsatt er tilstede for hver linje For å få ting klart, så lenge vi vurderer dette uttrykket utenfor en datakontekst, er alt greit da følgende DAX-spørring viser når den blir utført av Management Studio på Internett-salgsperspektivet av modellen vår ved hjelp av tabelldatabasen med de samme dataene. Evaluer Oppsummer datointervall Dato Dato 2003,1,1, - 5, DAY, Date Date SalesAmountSum Sum Internet Sales Sales Amount. Her reduserte jeg tidsperioden til 5 dager og angir også en fast dato da LastDate ville resultere i den siste datoen i min datadimensjonstabell for hvilken det ikke foreligger data i eksempeldata Her er resultatet fra spørringen. Etter at du har satt inn et filter til 2003, vil ingen dataarker utenfor 2003 bli inkludert i summen. Dette forklarer merknaden ovenfor. Det så ut som at vi bare har data fra 1. januar 2003 Og nå vet vi hvorfor året 2003 var på filteret som du kan se i det aller første skjermbildet av dette innlegget og derfor var det til stede ved beregning av summen nå er alt vi trenger å gjøre for å bli kvitt disse ekstra filtre fordi vi er allerede i filter Våre resultater etter dato Den enkleste måten å gjøre det på er å bruke beregningsfunksjonen og bruke ALL for alle attributter som vi vil fjerne filteret som vi har noen av disse attributter år, måned, dag, ukedag og vi ønsker å fjern filteret fra alle dem, men datoattributtet, snarvei-funksjonen ALLEXCEPT er veldig nyttig her. Hvis du har en MDX-bakgrunn, vil du lure på hvorfor vi ikke får et lignende problem når du bruker SSAS i OLAP-modus BISM Multidimensjonal Årsaken er at vår OLAP-database har attributtrelasjoner, så etter at du har satt inn dato-nøkkelattributtet, blir de andre attributene også forandret også, og vi trenger ikke å ta vare på dette, se mitt innlegg her. Men i tabellmodellen har vi ikke tildelt forhold heller ikke en ekte nøkkelattributt, og derfor må vi eliminere uønskede filtre fra våre beregninger. Så her er vi med. Salgsbeløpet 30d avg GjennomsnittX Summariser datointervall Dato Dato, Siste dato Dato, -30, DAG, Dato Dato SalgAmount Sum beregne Sum Internet Sales Sales Amount, ALLEXCEPT Dato, Date Date, SalesAmountSum. And dette er vårt siste pivottabell i Excel. For å illustrere det bevegelige gjennomsnittet, her er det samme ekstraktet av data i et diagramvisning Excel. Selv om vi filtrerte våre data I 2003 tar det bevegelige gjennomsnittet for de første 29 dagene i 2003 riktig hensyn til de tilsvarende dagene i 2002. Du vil gjenkjenne verdiene for 30. og 31. januar fra vår første tilnærming, da disse var de første dagene som vår første beregning hadde tilstrekkelig mengde av data full 30 dager. Beregning Veidede gjennomsnitt ved hjelp av MDX. Produkt s Tableau Desktop versjon s 8 2, 8 1 Senest endret dato 16. august 2016. Denne artikkelen viser hvordan du kan bruke multidimensjonale uttrykk MDX til å beregne det veide gjennomsnittet av forskjellige felter i en kubikdatakilde Under er to eksempler på MDX-setninger som kan brukes i Tableau for å beregne veide gjennomsnitt. Merknad Vedlagt arbeidsbok inneholder en forbindelse til Microsoft Analysis Servi ces MSAS AdventureWorks-terning Dette er en prøvekube som leveres med Microsoft Analysis Services Hvis du vil bruke denne arbeidsboken, må du endre serververdien fra scdemo-dbs til navnet på MSAS-serveren som er vert for AdventureWorks. Beregn vektet gjennomsnitt av to tiltak. Følg trinnene nedenfor for å beregne det veide gjennomsnittet av internettfraktkostnad og Internett-ordngruppe ved å bruke et beregnet medlem. Steg 1 Opprett et beregnet medlem for å beregne det veide gjennomsnittet av to tiltak. Last ned og åpne MDX-vektede gjennomsnitteksempler-arbeidsboken og klikk på vektet Gjennomsnitt av to målinger-regneark. Klikk på rullegardinmenyen Dimensjoner, og velg Beregnede medlemmer. I dialogboksen Beregnede medlemmer klikker du Ny for å opprette et nytt beregnet medlem. Gjør følgende i delen Beregnet medlemsdefinisjon. I navnet feltet, skriv Vektet gjennomsnitt. I formellboksen skriver du inn følgende MDX-setning. produkt internett rekkefølge telle internett fraktkostnad. Tjenesten for Internett-Internett-ordre. Bekreft at statusmeldingen indikerer at formelen er gyldig ved å klikke på Kontroller formel og deretter klikker OK. Steg 2 Opprett visningen. Fra Dimensruten trekker du til Rækkehylle og driller deretter ned til Underkategori. Fra Målruten trekker du det beregnede medlemmet Vektet Gj. sn. på kolonnens hylle. Det vektede gjennomsnittet av Internettordre og Internettfraktkostnad for hver underkategori vises nå. Beregn det vilkårlige komplekse vektede gjennomsnittet for hvert produkt. Følgende eksempelguider deg gjennom å lage en MDX-setning på tvers av både produkt - og kundegeografidimensjonene. Dette komplekse vektede gjennomsnittlige eksempel forteller Tableau å få det veide gjennomsnittet av Internett-salgsbeløp på tvers av hver kombinasjon av underkategori og land for sine respektive etterkommere. Steg 1 Opprett et beregnet medlem for å finne det veide gjennomsnittet for hvert produkt. I arbeidsboken for MDX Weighted Average Examples, klikk på Vilkårlig Kompleksvektet gjennomsnitt for E ach Produkt regneark. Opprett et nytt beregnet medlem, kaller det Kompleksvektet gjennomsnitt og bruk følgende MDX-setning i formelen. Avsluttende produktprodukt. Produkt Produktkategorier Underkategori, SELF. Descendants Kundekund. Kundekunde Geografi Land, SELF. Tiltak Internett Salgsbeløp Tiltak Internett Bestillings Antall. Måler Internett-bestilling Quantity. Step 2 Opprett visningen. Fra Dimensruten, dra til kolonnens hylle, og deretter drill ned til Underkategori. Fra Målinger-panelet, dra Internett Salgsbeløp til Marks-kortet, og dra deretter Kompleksvektet gjennomsnitt til Rutenes hylle. Følgende visning viser det veide gjennomsnittet av Internett-salgsbeløp, på tvers av hver kombinasjon av underkategori og land, for deres etterkommere. Andre søkeord MDX, kuber, flerdimensjonale datakilder, OLAP, String-funksjoner, MSAS. Takk for at du gir Din tilbakemelding om effektiviteten av artikkelen.

Comments

Popular Posts