Wat is zelf in Python: voorbeelden uit de echte wereld
Wat is zelf in Python: voorbeelden uit de echte wereld
In deze zelfstudie wordt de functie Functiequery in de Query-editor besproken . U leert hoe u functiequery's gebruikt en maximaliseert om de gewenste resultaten en gegevens te krijgen. U zult ook begrijpen hoe ze samenwerken met operators om specifieke resultaten te genereren.
Inhoudsopgave
Een functiequery maken
Met Power Query kunnen gebruikers aangepaste functies definiëren die een reeks argumenten in één enkele waarde toewijzen. Om te demonstreren, klikt u met de rechtermuisknop op de ruimte in het queryvenster. Klik vervolgens op Nieuwe query en selecteer Lege query.
Open vervolgens het venster Geavanceerde editor en verwijder de volledige inhoud. Als u een aangepaste functie wilt construeren, moet u beginnen met een set haakjes. Definieer vervolgens een door komma's gescheiden lijst met parameters tussen die haakjes. Voer daarna het go-to-teken in , wat de combinatie is van het gelijk- en groter-dan-teken, gevolgd door de hoofdtekst van de functie.
In dit voorbeeld zijn de parameters a en b , en de functiebody is a + b . Noem de query Add2Values .
Zo ziet de functiequery eruit.
Naast de querynaam in het queryvenster ziet u het fx- pictogram dat aangeeft dat het een functiequery is.
Om de functie aan te roepen, voert u een waarde in voor elke parameter en drukt u op Invoke .
Als u op Invoke drukt, wordt een nieuwe query gemaakt met de naam Invoked Function , die het resultaat van de ingestelde parameters bevat. In de formulebalk ziet u ook dat deze op naam verwijst naar de functiequery en de waarden van de parameters toewijst.
Om waarden uit verschillende kolommen toe te voegen, kunt u ook dezelfde functiequery gebruiken. Maak een nieuwe query en open het venster Geavanceerde editor . Voer vervolgens de volgende code in om een kleine tabel te maken.
Een aangepaste functiequery aanroepen
Om een aangepaste functie op elke rij van de tabel aan te roepen, gaat u naar het tabblad Kolom toevoegen en selecteert u Aangepaste functie aanroepen .
Een andere manier is om op het minitabelpictogram in de linkerbovenhoek van het voorbeeld te klikken en Aangepaste functie aan te roepen.
Als u op Aangepaste functie oproepen klikt, verschijnt er een dialoogvenster. Voer AddValues in als kolomnaam en selecteer Add2Values als functiequery. Stel vervolgens de waarden voor elke parameter in.
In dit voorbeeld staan de waarden in kolom 1 en 2.
U kunt zien dat er een nieuwe kolom aan de tabel is toegevoegd. De waarden in de kolom zijn de som van de rijwaarden van kolom 1 en 2.
Een argument verwijderen
Als u een van de argumenten in de formule verwijdert, leveren de waarden in de nieuwe kolom een Error op . In dit voorbeeld wordt Kolom2 verwijderd uit de formule.
Als u op de spatie naast de foutwaarde klikt, ziet u het foutbericht onder het voorbeeldvenster.
De aangepaste functie heeft een vereiste set parameters waarmee we optionele functieparameters kunnen maken.
Ga voor de volgende stap terug naar de Add2Values- functiequery en open het venster Geavanceerde editor. Voeg vervolgens het trefwoord optioneel tussen haakjes toe en klik op Gereed.
Als u teruggaat naar de SumExample Table Query , ziet u dat de Error-waarden in de laatste kolom null-waarden worden. Als u de operator toepast op waarden die een null bevatten, wordt altijd een null geretourneerd.
Een ander ding om op te letten is dat Function Query alle soorten argumenten accepteert. Dit kan mogelijk problemen veroorzaken omdat u een tekstwaarde kunt doorgeven en een andere fout kunt genereren. De opteloperator kan niet worden toegepast op operanden van dat gegevenstype.
In het venster Geavanceerde editor kunt u functies typen door het trefwoord toe te voegen als . Naast het typen van de parameters, kunt u ook een retourtype toewijzen aan de functie achter de haakjes.
Een argument toevoegen
Als u te veel argumenten toevoegt, krijgt u ook foutwaarden. Als u kolommen 2 en 3 invoert in de formulebalk, worden in de laatste kolom foutwaarden weergegeven.
Nogmaals, als u op de spatie naast de foutwaarde klikt, ziet u het foutbericht onder het voorbeeldvenster.
Er is een M-functie die helpt om met een dergelijke situatie om te gaan. Maak eerst een nieuwe lege query en voer de functie Function.From in de formulebalk in. U ziet dan documentatie van de functie.
Om dit te demonstreren, dupliceert u de Add2Values- functiequery en opent u het venster Geavanceerde editor. Voer vervolgens Function.From in aan het begin van de syntaxis.
Voer voor het eerste argument de functie in als het functietype. Voer voor het tweede argument List.Sum in om de waarden op te tellen en een lijst te retourneren. Als u klaar bent, klikt u op OK en hernoemt u de query naar AddValues .
Ga vervolgens terug naar de SumExample Table Query en wijzig de Function Query in AddValues . U zult zien dat de kolom AddValues nu de som bevat van elke rijwaarden van de kolom.
Hoewel er slechts twee parameters zijn gedeclareerd in het functietype, kunt u de functie aanroepen met zoveel argumenten als u wilt. Dit komt omdat alle argumenten worden samengevoegd tot een enkele lijst voordat ze aan de functie worden doorgegeven.
Hoe u uw parameters noemt, maakt niet uit.
Als u een aangepaste functie binnen de Function.From schrijft en u moet naar een item verwijzen, moet u de positionele indexoperator gebruiken om toegang te krijgen tot het item in de lijst.
Unaire functies begrijpen
Unaire functies zijn functies die u de hele tijd ziet. Veel van de standaard bibliotheekfuncties nemen functies als argumenten en die parameterfuncties zijn vaak unair. Het betekent dat de functie slechts één enkel argument nodig heeft.
Voeg bijvoorbeeld een filtervoorbeeldquery toe door een nieuwe lege query te maken. Open vervolgens het venster Geavanceerde editor en voer de volgende syntaxis in.
Als u klaar bent, ziet u een tabel met de kolommen CustomerID en Name in het voorbeeldvenster. Noem de query FilterExample .
Codes schrijven in een functiequery
In plaats van de gebruikersinterface te gebruiken om de code te genereren, kunt u de code gewoon zelf schrijven. Als u rijen wilt selecteren waarvan de klant-ID groter is dan 2, klikt u op fx naast de formulebalk om handmatig een stap in te voeren. Power Query retourneert automatisch de variabelenaam van de laatste stap in het deelvenster Toegepaste stappen.
Voer vervolgens de functie Table.SelectRows en de bijbehorende argumenten in de formulebalk in. Het eerste en tweede argument moeten respectievelijk een tabel en een voorwaarde als functie zijn. In dit voorbeeld is het eerste argument het ChType en het tweede argument is een aangepaste functie die de klant-ID groter dan 2 naar voren brengt.
Een andere manier is om het sleutelwoord elk te gebruiken , wat een afkorting is voor een unaire functie. Het neemt een enkele naamloze variabele als argument en wordt weergegeven door het onderstrepingsteken ( _ ). Om dit te demonstreren, opent u het venster Geavanceerde editor en wijzigt u de aangepaste functie.
Zodra u op Gereed drukt, kunt u zien dat het dezelfde resultaten oplevert.
Om de leesbaarheid van de formule te verbeteren, kunt u het onderstrepingsteken weglaten bij toegang tot velden of kolommen.
Als u teruggaat naar het venster Geavanceerde editor en het onderstrepingsteken in de aangepaste functie verwijdert, krijgt u nog steeds dezelfde resultaten.
Alle uitdrukkingen zijn gelijk aan elkaar. Maar vanuit het oogpunt van leesbaarheid en schrijven is de laatste versie beslist gemakkelijker te begrijpen. Bij het maken van deze stap via de gebruikersinterface gebruikt de M- engine de verkorte notatie.
M-functie voor datumtabel - Een parameter toevoegen in de query-editor
Een aangepaste tekstopschoonfunctie maken in Power Query
Conclusie
Een functiequery gebruikt en maximaliseert functies om gegevens te verkrijgen. Ze helpen specifieke informatie uit een tabel of bron naar voren te halen of te verzamelen om resultaten te leveren. U kunt deze functies gebruiken om effectief een gegevensrapport te maken en uw vaardigheden op het gebied van gegevensontwikkeling te verbeteren.
Melissa
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