LuckyTemplates Splits kolom door scheidingstekens in DAX

LuckyTemplates Splits kolom door scheidingstekens in DAX

In de blog van vandaag leert u hoe u LuckyTemplates kunt gebruiken om kolommen te splitsen met scheidingstekens met behulp van DAX. Dit is iets waarvan u waarschijnlijk weet hoe u het gemakkelijk kunt doen met Power Query, en dat is over het algemeen de beste manier om het te doen. 

Maar vanwege de dynamische aard van het probleem en de specifieke overwegingen binnen het datamodel zijn er situaties waarin het gebruik van DAX een betere oplossing biedt. Je kunt de volledige video van deze tutorial onderaan deze blog bekijken.

Inhoudsopgave

Voorbeeld probleem

Dit is het voorbeeldprobleem in LuckyTemplates.

LuckyTemplates Splits kolom door scheidingstekens in DAX

U hebt een lijst met ongeveer 600 filmtitels en u wilt de meest voorkomende woorden identificeren. Om dat te doen, gebruikt u de onderstaande parameterschuifregelaar om de woorden van elke titel te berekenen.

LuckyTemplates Splits kolom door scheidingstekens in DAX

In de schuifregelaar kunt u instellen hoeveel topwoorden u wilt retourneren. Stel dat u voor deze zelfstudie vijf woorden hebt ingesteld.

Je volgende doel is om elke titel terug te geven die ten minste één van de vijf woorden bevat die je hebt geselecteerd. Dit klinkt misschien eenvoudig, maar dat is een beetje lastiger dan het lijkt. Dus hier zijn de stappen om deze doelen te bereiken.

Stappen voor het splitsen van kolommen met scheidingstekens

In dit gedeelte leert u hoe u het gegeven probleem kunt oplossen door kolommen in DAX te splitsen. De eerste stap is om de filmgegevens te openen door op het tweede pictogram aan de linkerkant te klikken en vervolgens op Film in het veldenvenster. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

In de lijst met films die zal verschijnen, moet je manieren bedenken om de titels op te splitsen in afzonderlijke woorden.

Een mogelijke oplossing is om twee virtuele tabellen te gebruiken , zoals hieronder weergegeven. Tabel 1 is een tabel met één kolom van de bovenste N woorden gedefinieerd door de schuifregelaar. De tweede tabel is een virtuele kolom met de woorden in elke filmtitel. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Vervolgens kunt u met behulp van de twee virtuele tabellen de functie gebruiken om te bepalen welke woorden er gemeenschappelijk zijn. Voer vervolgens uit op die virtuele tafel om te weten of dat getal groter is dan of gelijk is aan één. 

Als het antwoord ja is, dan staat tenminste één van de doelwoorden in de filmtitel. En dat zijn de titels die we in het eindresultaat willen behouden. 

Nuttige LuckyTemplates-tools voor gesplitste kolommen vinden in de SQLBI DAX-handleiding

Om na te denken over hoe u dat kunt implementeren, kunt u de SQLBI DAX-handleiding raadplegen door naar Externe hulpmiddelen te gaan en vervolgens DAX-handleiding

LuckyTemplates Splits kolom door scheidingstekens in DAX

Op deze pagina kunt u functies zoeken op type door op Groepen te klikken.

LuckyTemplates Splits kolom door scheidingstekens in DAX

Onder Functies kunt u beginnen met Tekst om te zien of er tekstfuncties zijn die vergelijkbaar zijn met het splitsen van kolommen door scheidingstekens. Dat zou het heel gemakkelijk maken, maar helaas is er niets dat daarmee overeenkomt in DAX.

LuckyTemplates Splits kolom door scheidingstekens in DAX

Wat u in plaats daarvan gaat gebruiken, zijn de die hetzelfde doen als splitsen door het scheidingsteken.

LuckyTemplates Splits kolom door scheidingstekens in DAX

Ouder-kind hiërarchiefuncties

De bovenliggende-kindhiërarchiefuncties of de PATH-functies worden meestal gebruikt voor hiërarchische situaties. Stel dat u een HR-analyse nodig heeft waarbij u de CEO van een bedrijf, de managers op directeursniveau, de managers op het niveau van de filiaalchefs, enzovoort, hebt.

PATH-functies kunnen deze hiërarchie op een bepaalde manier uitdrukken en er heen en weer doorheen lopen. Dit is het traditionele gebruik van de bovenliggende-onderliggende hiërarchiefuncties, maar u zult leren dat het ook een aantal zeer nuttige eigenschappen heeft voor tekstmanipulatie en DAX.

Het gebruik ervan is een stuk lastiger dan LuckyTemplates, maar we hopen het proces gemakkelijker te maken door u een stapsgewijze oplossing te bieden. Het is een handige techniek om te leren, en het stelt je bloot aan een familie van DAX-functies die ongelooflijk krachtig zijn.

LuckyTemplates gesplitste kolom in DAX

De functies van de bovenliggende-kindhiërarchie omvatten een aantal stappen, maar ze zijn de moeite waard om te bekijken, omdat deze vijf functies echt krachtig en flexibel zijn. 

te beginnen terug naar de tabel en klik op Filmpad in het veldenvenster. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Maak een filmpad met het commando zoals hieronder weergegeven.

LuckyTemplates Splits kolom door scheidingstekens in DAX

Wat deze opdracht doet, is elke spatie vervangen door een verticaal streepje. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Dit is dezelfde manier waarop paden moeten worden opgemaakt in LuckyTemplates, dus meestal wordt dit gedaan in Power Query. opdrachten te zien , die verschillen van de M-opdrachten in Power Query. 

De functie creëert de padstructuur die u nodig hebt, terwijl de opdracht alle voorloop- of volgspaties verwijdert die onze resultaten kunnen beïnvloeden. 

Uw tweede berekende kolom is de padlengte. Het is een regelrechte opdracht in de functie die u toepast op het filmpad. Het zal je vertellen hoeveel items er op dat pad staan, dus in dit geval is het het aantal woorden in de titel. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Hetzelfde commando kan worden gebruikt om bijvoorbeeld het aantal mensen in de meldketen te bepalen. Maar deze zaak is slechts een simpele woordentelling. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Het volgende dat u moet doen, is naar de Max Path Index in het deelvenster Velden gaan. Maak vervolgens een berekende tabel die de hele filmtabel doorloopt, de filters verwijdert en de maximale padlengte berekent om de langste titel in de database te kennen.

Met behulp van de functie kunt u een reeks indexen genereren met één tot het maximale aantal paden. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Zo zou je tafel eruit moeten zien. U zult zo zien waarom dit waardevol is.

LuckyTemplates Splits kolom door scheidingstekens in DAX

Ga voor nu terug naar LuckyTemplates en klik op Topwoorden in filmpad in het veldenvenster. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

We zullen ons concentreren op deze virtuele tafel waarvan de algemene oplossing het eerder getoonde Venn-diagram was. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Laten we het opsplitsen om het beter te begrijpen. In de onderstaande regels hebben we de virtuele tabel gebruikt voor de top N woorden, zoals hieronder berekend. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Vervolgens wordt de gesplitste kolom door scheidingsteken berekend in de onderstaande regels. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Vervolgens hebben we de kruising van die twee kolommen toegepast. Als dat snijpunt groter is dan nul, geven we het een één of anders nul. Uiteindelijk hebben we het resultaat geretourneerd.

LuckyTemplates Splits kolom door scheidingstekens in DAX

Wanneer u met complexe virtuele tabellen werkt, is de eenvoudigste manier om naar de Tabular Editor te gaan , waar u deze virtuele tabellen kunt materialiseren in een DAX-query. Daarvoor moet u zich concentreren op de hieronder gemarkeerde lijnen. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Dus kopieer deze code en laat hem op ons klembord staan ​​voor de volgende stappen. 

Gesplitste LuckyTemplates-kolommen verwerken met behulp van de tabellarische editor 3

Klik in de Externe hulpmiddelen op Tabellarische editor 3 . U kunt hiervoor ook DAX Studio gebruiken, maar Tabular Editor wordt aanbevolen vanwege de extra debug-functies en andere leuke mogelijkheden. Voor DAX-vragen werkt DAX Studio ook goed en het is helemaal gratis. 

Terug in de Tabular Editor maakt u een nieuwe DAX-query door op het papierpictogram in het lint te klikken. Typ EVALUATE in regel 1, plak de gekopieerde code en druk op F5.

LuckyTemplates Splits kolom door scheidingstekens in DAX

U krijgt een tabel met het filmpad en het maximale pad voor de eerste twee kolommen. Voor de derde kolom gebruikt u de opdracht en het filmpad om te bepalen wat het eerste woord is voor elke verhoging van de padindex, van één tot negen. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Deze code retourneert het eerste woord dat in de derde kolom wordt gepresenteerd. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Probeer een bepaalde film te bekijken door op het pictogram Filter in de kolomtitel Films[Filmpad] te klikken. Neem er bijvoorbeeld een die iets langer is, bijvoorbeeld Captain America: The Winter Soldier. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

In het onderste deel van het venster kunt u zien dat EVALUATE 1000 rijen heeft geretourneerd

LuckyTemplates Splits kolom door scheidingstekens in DAX

Krijg alle rijen en ga dan terug en filter Films [Filmpad] opnieuw voor Captain America.

LuckyTemplates Splits kolom door scheidingstekens in DAX

Zoek naar Captain America: The Winter Soldier. Vink het juiste vakje aan en klik op Sluiten.

LuckyTemplates Splits kolom door scheidingstekens in DAX

Wat het precies doet voor elke titel, is de één tot en met negen indexen doorlopen en toepassen, zoals te zien is in de tweede kolom, en dat vervolgens toepassen op het commando.

Je kunt zien dat het eerste item Captain is , het tweede item America , het derde The , het vierde Winter en het laatste Soldier . Als je van zes naar negen gaat, is het gewoon leeg omdat het het aantal woorden in die specifieke titel heeft overschreden. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Wat u hebt gemaakt, is een kolom Gesplitst op scheidingsteken, die precies hetzelfde is als de kolom Gesplitst op scheidingsteken in Power Query. 

In LuckyTemplates zie je dat de opdracht die door de intersectie en de IF-instructie loopt. Dus als u teruggaat naar uw dataset en het deelvenster Filters opent, kunt u zien dat het bovenste woord in film is gefilterd zodat het gelijk is aan één. 

LuckyTemplates Splits kolom door scheidingstekens in DAX

Dit betekent in feite dat alles in de rechtertabel (Film) met een woord dat in de doellijst in de linkertabel staat, in de bovenste rijen wordt weergegeven. Aan de andere kant, degenen die nul zijn, worden naar beneden geplaatst.

LuckyTemplates Splits kolom door scheidingstekens in DAX


Power Automate splitsfunctie en arrays
LuckyTemplates-kolomsplitsing Power Query-zelfstudie: Excel-cellen met meerdere regels splitsen in LuckyTemplates
Een gescheiden lijst maken in Power Query – Zelfstudie Query-editor

Conclusie

In deze blog heb je geleerd hoe je kolommen kunt splitsen met scheidingstekens in DAX. U zult merken dat deze tool erg handig is wanneer uw situatie erg dynamisch is of uw datamodel het niet ondersteunt om dit in Power Query te doen.

Bovendien is het voorbeeldprobleem waaraan je hebt gewerkt een goede illustratie van de ongebruikelijke kracht van de PATH-opdrachten en hoe je die kunt gebruiken om problemen op niet-traditionele manieren op te lossen.


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