Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

In deze zelfstudie leert u hoe u Power Query kunt gebruiken voor valutaconversies in LuckyTemplates. Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.

De methode die in deze blog wordt besproken, helpt u bij het oplossen van problemen in uw valutakoerstabel met behulp van de laatst beschikbare koers.

U zult begrijpen hoe u dingen moet oplossen als de valutakoersentabel niet elke dag een valutakoers heeft.

Inhoudsopgave

Ontbrekende gegevens identificeren

Dit probleem kan optreden als de tabel Datum geen gegevens bevat voor feestdagen of weekenden.

Als u op geen enkele dag een tarief heeft en er geen rekening mee houdt, worden statistieken zoals Total Sales niet geconverteerd.

Als u deze tabel met valutakoersen bekijkt, ziet u de koersen in euro's voor januari 2016.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Maar merk op dat de 27e en 28e dag ontbreken en geen tarief hebben. Dus als je naar de matrix gaat, zie je dat er geen tarieven zijn voor 27 en 28.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

De valutakoers met ontbrekende maat is gewoon een som van de tabel Feitelijke valutakoersen.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Het totaal van 26,6983 in de tabel is zinloos. Het is gewoon de som van alle valutakoersen erboven die u niet hoeft op te tellen omdat ze zijn wat ze zijn onder de huidige dag.

Dit kan nu worden opgelost in Power Query , omdat dit meer een probleem met gegevensmodellering is waarbij query's en aggregatie betrokken zijn. Dat kan ook met DAX, maar het gaat makkelijker en sneller met Power Query in LuckyTemplates.

Klik dus op Gegevens transformeren en open vervolgens het Power Query-venster.

Dit is de tabel met ontbrekende gegevens. U kunt in deze valutakoersentabel ook zien dat deze Euro's, Ponden en Dollars bevat.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

En dan is dit de finaletafel met waarden op 27 en 28 januari. Dit is de tabel of uitvoer die u zou moeten hebben.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Importeer uw gegevens uit de bron waar u ze vandaan haalt en wijzig gewoon het gegevenstype.

Verschillende valuta's scheiden

Als u vervolgens meer dan één valuta heeft, is het belangrijk om ze te scheiden en te groeperen op basis van hun ticker.

Wanneer u ze groepeert, zorg er dan voor dat u ze in Alle rijen groepeert, zodat als u bijvoorbeeld op Euro's klikt, alleen de valutakoersen in Euro's worden weergegeven.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Je kunt ook zien dat er hier dagen ontbreken, evenals de pond-valuta.

Er is zoiets als de Invoke Custom Function in LuckyTemplates. Dit is een functie met FillMissingRates.

Als u op Euro klikt, ziet u een volledige tabel met daarin de ontbrekende gegevens die u in de uitgevouwen tabel zag. Het is gesorteerd van de oudste naar de nieuwste tarieven.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Zoek uit wat de aangepaste functies doen. Als u op het tandwielpictogram in de buurt van de Invoke Custom Function klikt, ziet u de kolomnaam en de bron die in de kolom All wordt getrokken.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Om dat te doen, begint u met een basistabel. Voer de transformaties uit, krijg het gewenste resultaat en gebruik dat vervolgens om de functie te bouwen. Het is logischer dan te proberen het te doen in de tabel waar je alle andere subtabellen hebt.

Als u zich bijvoorbeeld op de euro wilt concentreren, filtert u deze naar de ticker.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Om erachter te komen welke dagen ontbreken, voegt u deze samen met uw datumtabel.

Hier is een standaard gefilterde valutatabel en DimDate-tabel:

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Voor de Join Kind kunt u Full Outer gebruiken om alle rijen van beide tabellen in te voeren. Zo zie je wat er ontbreekt en welke tarieven daarbij passen.

Wanneer u het samenvoegt, krijgt u een volledige tabel als een subtabel.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Sorteer daarna de rijen en vouw vervolgens de DimDate uit om alleen de kolom Datum op te nemen.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Nu kun je zien dat alles op elkaar is afgestemd. En wanneer u de rijen sorteert van oudste naar nieuwste, ziet u ook de twee ontbrekende dagen met null-waarden.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Ontbrekende tarieven invullen

Het is belangrijk dat ze in deze volgorde staan, omdat u alle nullen in alle kolommen gaat invullen behalve Datum.1.

Nadat u het heeft ingevuld, ziet u dat de nulwaarden zijn gewijzigd in Euro en het laatst beschikbare tarief.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Verwijder vervolgens de overbodige kolommen zoals de kolom Datum uit de tabel.

Datum.1 kolom bevat al de datums, dus de kolom Datum is niet nodig. Stel vervolgens de Crossrate in op Decimaal getal.

Herschik ten slotte de kolommen en hernoem ze en zorg ervoor dat uw gegevenstypen zijn ingesteld.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Je hebt nu een complete valutakoersentabel.

Dit werkt echter alleen voor deze tabel. Je moet een manier vinden om dezelfde logica toe te passen op een tabel waarin valuta's zijn gegroepeerd.

Alle valuta's samenvoegen

Als u verschillende valuta's heeft, is het moeilijk om verschillende koerstabellen bij te houden. U moet ze dus samenvoegen om één valutatabel te maken.

Om te beginnen, neemt u uw bestaande tabel en maakt u een functie door op Tabel te klikken en Functie maken te selecteren . Voer vervolgens een functienaam in.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Ga daarna naar Geavanceerde editor . Verwijder de berekeningen die u niet nodig heeft. Verwijder in dit geval de bron-, filter- en wijzigingssyntaxis.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Geef vervolgens uw parameter Source een naam en voer vervolgens Let in. Aangezien de gefilterde rijen zijn verwijderd, wijzigt u de waarde in de syntaxis van samengevoegde query's in bron. Verwijder daarna de bron aan het einde van de syntaxis en klik vervolgens op Gereed.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Ga nu naar Kolom toevoegen, klik op Aangepaste functie aanroepen. Voer een kolomnaam in zoals Alle gegevens. Selecteer voor de functiequery de functie die eerder is gemaakt. Kies Alles als Bron en klik vervolgens op OK.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Het volgende dat u moet doen, is alle kolommen verwijderen behalve Alle gegevens. Vouw vervolgens die kolom uit en schakel de instelling "Oorspronkelijke kolomnaam als voorvoegsel gebruiken" uit. Klik daarna op OK en wijzig de kolomtypen.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Stel het kolomtype Datum, Ticker en Crossrate in op respectievelijk Datum, Tekst en Decimaal. Als u klaar bent, klikt u op Sluiten en toepassen.

U krijgt nu een gecombineerde valutakoerstabel zonder ontbrekende datums en koersen.

Relaties creëren in het datamodel

In uw gegevensmodel ziet u de tabel FactCurrencyRates . Maak nu een relatie, Ticker to Ticker en Date to Date, met die tabel en de DimCurrencyRates- en DimDate-tabel.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Trek in uw matrix de valutakoers niet ontbrekend in om te zien dat de tarieven voor de 27e en 28e nu allemaal zijn gedaan in Power Query.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

De kolom Laatst gerapporteerde valutakoers toont ook de koersen van de ontbrekende dagen. Het toont dezelfde tarieven en waarden. Maar het verschil tussen beide is dat deze kolom is gemaakt in DAX.

Dit is de maat en syntaxis van die kolom. Het is niet zo eenvoudig als het gebruik van alleen de functie in Power Query.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Als u naar de tabel kijkt, ziet u de kolom Geconverteerde verkopen geen ontbrekende. Het toont de verkopen die zijn geconverteerd met behulp van de kolom Valutakoers niet ontbrekend. De andere kolom met geconverteerde verkopen gebruikt de kolom die in DAX is gemaakt.

De functie die wordt gebruikt om de geconverteerde verkopen te verkrijgen, is . Als je naar de maat voor die kolom kijkt, zie je SUMX over de DimDate-tabel gaan.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

DAX- en Power Query-methoden vergelijken

U kunt zowel de geconverteerde verkoopkolommen die DAX als Power Query in LuckyTemplates gebruikten, vergelijken.

Om dat te doen, verwijdert u alle kolommen behalve de geconverteerde verkoopkolommen. Start vervolgens de prestatie-analyzer en klik op Opname starten.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Open vervolgens DAX Studio. Het is een applicatie die u laat zien hoe en waarom dingen in uw model werken. Kopieer daarna de query van je matrix en plak deze in de studio.

Maak voor de vergelijking eerst een opmerking, zodat deze de andere kolom die wordt getest niet verstoort.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

En laad vervolgens de Server Timings en Query Plan. Aangezien u prestaties vergelijkt, moet u eerst de cache wissen voordat u de vergelijking uitvoert.

Na het uitvoeren van de test kunt u zien dat de kolom die DAX gebruikte, veel scans heeft gekregen en een totale tijd heeft van 71 milliseconden.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

Voer nu de andere kolom uit die Power-query gebruikte. Maar verander eerst de andere kolom in de syntaxis in een opmerking.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

U kunt zien dat de kolom slechts 25 milliseconden heeft gedraaid en slechts 7 scans heeft.

Ontbrekende valutakoersen oplossen met Power Query in LuckyTemplates

U kunt duidelijk zien welke sneller en beter presteert tussen de DAX- en Power Query-methoden.

Conclusie

Een voordeel van het gebruik van de Power Query-methode in LuckyTemplates is dat de gegevens al zijn opgeslagen. De meting kan dus de snelheid vinden en deze vervolgens weergeven met behulp van eenvoudige functies.

Een ander ding over deze methode is dat het niet vertraagt ​​als de berekening complex wordt.

Dit werkt echter alleen als de gegevens waar u om vraagt ​​niet direct hoeven te worden geconverteerd. Als dit het geval is, moet u DAX gebruiken.

Al het beste,


Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Een RDS-bestand opslaan en laden in R

Een RDS-bestand opslaan en laden in R

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.

First N Business Days Revisited – Een DAX-coderingstaaloplossing

First N Business Days Revisited – Een DAX-coderingstaaloplossing

In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

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.

Inleiding tot het filteren van context in LuckyTemplates

Inleiding tot het filteren van context in LuckyTemplates

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.

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

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.

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

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.

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.

Zakelijke rapportage met behulp van LuckyTemplates

Zakelijke rapportage met behulp van LuckyTemplates

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

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten