Wat is zelf in Python: voorbeelden uit de echte wereld
Wat is zelf in Python: voorbeelden uit de echte wereld
Ik heb wat verwarring gezien met herhalende functies in DAX wanneer ik met LuckyTemplates-leden in het forum werk. We zullen dus bekijken wat u kunt bereiken met deze functies en waarom u ze zou moeten gebruiken. Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.
Naarmate u zich meer verdiept in DAX- formules, zult u deze herhalende functies veel vaker gebruiken dan u denkt. Ze zijn veel veelzijdiger dan eenvoudige aggregatiefuncties zoals SUM of AVERAGE .
Ik heb hier enkele voorbeelden en ik wil de logica in elk van deze voorbeelden doornemen, zodat je een heel goed begrip kunt krijgen van wat er werkelijk gebeurt als logica via deze formules wordt uitgevoerd.
Het belangrijkste van itererende functies is dat ze ergens doorheen itereren.
Inhoudsopgave
Eenvoudige iteratie met behulp van SUMX
In dit geval wil ik iets opsommen, maar wil ik elke rij in deze verkooptabel herhalen.
En dan wil ik bij elke afzonderlijke rij deze specifieke logica hier uitvoeren.
Laten we snel naar onze zeer eenvoudige tabel Sales gaan, waar ik wat logica wil uitvoeren op elke afzonderlijke rij. En dan wil ik Hoeveelheid vermenigvuldigen met Prijs.
De prijs bestaat niet in deze tabel. En voor dit specifieke model staat het eigenlijk in de producttabel.
Het volgende dat ik moet doen, is teruggaan naar mijn producttabel en dat kan ik doen met GERELATEERD . Wanneer we de hoeveelheid maal de relevante prijs berekenen, doen we dit voor elke afzonderlijke rij. Dit is precies wat er in deze formule gebeurt.
Dit zijn de belangrijkste concepten om te onthouden wanneer we meer geavanceerde dingen gaan doen.
Een alternatieve benadering om verkoop binnen te halen met SUMX
In dit voorbeeld laat ik SUMX de tabel Sales opnieuw doorlopen. Dus we voeren die logica in elke afzonderlijke rij uit en berekenen de hoeveelheid maal prijs in elke afzonderlijke rij en tellen deze vervolgens op zodra alle iteraties zijn voltooid.
Je zult hier zien dat dit resultaat exact hetzelfde is als de resultaten in het eerste voorbeeld (SUMX Tutorial 2) of de Total Sales.
Je kunt hier een hele reeks verschillende dingen in plaatsen - het kan een maat zijn en je kunt vertakken met een herhalende functie. U hoeft niet naar specifieke kolommen te verwijzen om de berekeningen daadwerkelijk correct te krijgen.
Zoals je hier kunt zien, heb ik hier alleen een meting (Totale verkoop) geplaatst en krijg ik precies hetzelfde resultaat.
SUMX en logische functies
Ik gebruik hier SUMX , maar het is ook relevant voor AVERAGEX , MINX en MAXX . Het zijn allemaal erg vergelijkbare dingen.
Een ander belangrijk ding om te onthouden met deze itererende functies is dat ze logica uitvoeren op elke rij en dat het resultaat in het geheugen wordt opgeslagen.
Zodra al deze waarden in het geheugen zijn opgeslagen, is de overkoepelende berekening klaar – zoals een SOM of een GEMIDDELDE .
Terug naar ons voorbeeld, je ziet hier dat het bedrag in deze kolom iets lager is dan in de voorgaande kolommen.
Met de herhalingsfunctie SUMX wil ik elke afzonderlijke rij in de tabel Verkoop doorlopen. En in elke rij wil ik berekenen of die bepaalde verkoop groter is dan $ 2.000. Als dat zo is, wil ik de totale verkoop voor die rij berekenen. Maar als het totaal van de verkoop minder dan $ 2000 was, dan wil ik nul retourneren. Dus ik wil alleen de verkoop met een hogere waarde berekenen.
Sommige mensen zullen suggereren dat ik de logica gewoon in een berekende kolom zou kunnen plaatsen. Maar dat willen we niet doen, omdat er een veel betere manier is om deze logica binnen DAX uit te voeren in plaats van deze fysiek in een kolom te plaatsen.
Itereren door tabellen
Dit is waar itererende functies serieus verbazingwekkend zijn. U kunt niet alleen een fysieke tabel doorlopen zoals we eerder deden, maar u kunt ook een andere virtuele tabel doorlopen die u als parameter invoert.
We gaan ervan uit dat elk resultaat hier een specifieke context heeft. In dit specifieke geval hebben we de klantcontext.
In deze context wil ik elke afzonderlijke locatie doorlopen en wil ik zien of een bepaalde klant een omzet van meer dan $ 5.000 heeft bereikt.
Als dat het geval is, wil ik de totale verkoop berekenen. Maar als dat niet het geval is, wil ik dat het nul retourneert.
Dus in dit specifieke geval bereken ik de hoogwaardige locaties waar deze klant koopt en de totale omzet die ze op die locaties realiseren.
Wat VALUES hier doet, is het creëren van een virtuele tafel. Dus SUMX werkt hier niet eens aan iets fysieks. Het werkt eigenlijk aan iets dat totaal virtueel is.
Eenvoudige iteratie met behulp van MINX
Dit is vergelijkbaar met de vorige voorbeelden, maar in plaats van SUMX gaan we een ander type aggregatie uitvoeren zodra we elke afzonderlijke rij doorlopen.
In dit specifieke geval schrijven we elke locatie voor elke klant door en berekenen we de totale verkoop voor elk van die locaties.
Dan willen we het minimale bedrag teruggeven van de locatie waar ze hebben gekocht.
Eenvoudige iteratie met behulp van MAXX
Ik doe hier ook iets soortgelijks om je de veelzijdigheid van herhalende functies te laten zien. Ik doorloop elke afzonderlijke locatie en kijk naar hun verkopen, maar geef dan het maximum van die locatieverkopen terug, daarom zien we hier hogere cijfers.
Conclusie
Het belangrijkste dat ik in dit artikel wilde bespreken, is het scala aan opties dat je hebt binnen een herhalende functie versus een eenvoudige som of een gemiddelde.
Zodra u zich gaat verdiepen in complexere berekeningen, zult u zien hoe essentieel deze specifieke functies zijn om waarden op contextniveau te retourneren.
Er is zoveel veelzijdigheid en zoveel manieren waarop je deze berekeningen kunt uitvoeren met een eenvoudige formule als je maar weet hoe je de parameters moet manipuleren.
Als je het leuk vond om meer te weten te komen over deze itererende functies , kun je door deze links bladeren voor meer informatie over dit onderwerp:
Sleutelconcepten voor herhalende functies in LuckyTemplates
Logica itereren via virtuele tabellen: geavanceerde DAX-concepten in LuckyTemplates
Geniet ervan om deze door te werken.
Wat is zelf in Python: voorbeelden uit de echte wereld
Je leert hoe je objecten uit een .rds-bestand in R opslaat en laadt. In deze blog wordt ook besproken hoe je objecten uit R naar LuckyTemplates importeert.
In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.
Deze zelfstudie behandelt hoe u de Multi Threaded Dynamic Visuals-techniek kunt gebruiken om inzichten te creëren op basis van dynamische gegevensvisualisaties in uw rapporten.
In dit artikel zal ik de filtercontext doornemen. Filtercontext is een van de belangrijkste onderwerpen waarover elke LuckyTemplates-gebruiker in eerste instantie zou moeten leren.
Ik wil laten zien hoe de online service LuckyTemplates Apps kan helpen bij het beheren van verschillende rapporten en inzichten die uit verschillende bronnen zijn gegenereerd.
Leer hoe u wijzigingen in uw winstmarge kunt berekenen met behulp van technieken zoals vertakking van metingen en het combineren van DAX-formules in LuckyTemplates.
Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.
Als u tot nu toe nog steeds Excel gebruikt, is dit het beste moment om LuckyTemplates te gaan gebruiken voor uw zakelijke rapportagebehoeften.
Wat is LuckyTemplates Gateway? Alles wat u moet weten