LuckyTemplates dela kolumn efter avgränsare i DAX

I dagens blogg kommer du att lära dig hur du använder LuckyTemplates för att dela kolumner efter avgränsare med hjälp av DAX. Detta är något du förmodligen skulle veta hur du enkelt gör med Power Query, och det är i allmänhet det bästa sättet att göra det. 

Men på grund av problemets dynamiska natur och de specifika övervägandena inom datamodellen, finns det situationer där användning av DAX ger en bättre lösning. Du kan se hela videon av denna handledning längst ner på den här bloggen.

Innehållsförteckning

Provproblem

Detta är exempelproblemet i LuckyTemplates.

LuckyTemplates dela kolumn efter avgränsare i DAX

Du har en lista på cirka 600 filmtitlar och du vill identifiera de vanligaste orden bland dem. För att göra det använder du parameterreglaget som visas nedan för att beräkna orden från varje titel.

LuckyTemplates dela kolumn efter avgränsare i DAX

I skjutreglaget kan du ställa in hur många toppord du vill returnera. För den här handledningen, säg att du ställer in den på fem ord.

Ditt nästa mål är att returnera varje titel som har minst ett av de fem orden du valt. Att göra det kan låta enkelt, men det är lite knepigare än det verkar. Så här är stegen för att uppnå dessa mål.

Steg för hur man delar upp kolumner med avgränsare

Det här avsnittet kommer att lära dig hur du löser det givna problemet genom att dela upp kolumner i DAX. Det första steget är att öppna filmdata genom att klicka på den andra ikonen på vänster sida och sedan på Film i fältrutan. 

LuckyTemplates dela kolumn efter avgränsare i DAX

I listan över filmer som kommer att dyka upp måste du tänka på sätt att dela upp titlarna i enskilda ord.

En möjlig lösning är att använda två som visas nedan. Tabell 1 är en tabell med en kolumn över de N översta orden som definieras av skjutreglaget. Den andra tabellen är en virtuell kolumn med orden i varje filmtitel. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Sedan, med hjälp av de två virtuella tabellerna, kan du använda funktionen för att bestämma vilka ord som är gemensamma mellan dem. Gör sedan på den virtuella tabellen för att veta om det numret är större än eller lika med ett. 

Om svaret är ja, så finns åtminstone ett av målorden i filmtiteln. Och det är de titlarna vi vill behålla i slutresultatet. 

Hitta användbara LuckyTemplates Split Column Tools i SQLBI DAX Guide

För att fundera på hur du kan implementera det kan du hänvisa till SQLBI DAX-guiden genom att gå till den dåvarande DAX-guiden

LuckyTemplates dela kolumn efter avgränsare i DAX

På den här sidan kan du söka efter funktioner genom att klicka på Grupper.

LuckyTemplates dela kolumn efter avgränsare i DAX

Under Funktioner kan du börja med Text för att se om det finns några textfunktioner som liknar dela kolumner med avgränsare. Det skulle göra det ganska enkelt, men tyvärr finns det inget som motsvarar det i DAX.

LuckyTemplates dela kolumn efter avgränsare i DAX

Istället, vad du kommer att använda är de som gör samma sak som delas av avgränsaren.

LuckyTemplates dela kolumn efter avgränsare i DAX

Förälder-barn-hierarkifunktioner

Förälder-barn-hierarkifunktionerna eller PATH-funktionerna används vanligtvis för hierarkiska situationer. Låt oss säga att du behöver en HR-analys där du har VD för ett företag, chefer på direktörsnivå, chefer på filialnivå, och så vidare.

PATH-funktioner kan uttrycka denna hierarki på ett speciellt sätt och gå fram och tillbaka genom den. Detta är den traditionella användningen av föräldra-barn-hierarkifunktionerna, men du kommer att lära dig att den också har några mycket användbara egenskaper för textmanipulation och DAX.

Att använda det är mycket svårare än LuckyTemplates, men vi hoppas kunna göra processen enklare genom att ge dig en steg-för-steg-lösning. Det är en användbar teknik att lära sig, och den utsätter dig för en familj av DAX-funktioner som är otroligt kraftfulla.

LuckyTemplates dela kolumn i DAX

Funktionerna föräldra-barn-hierarki innefattar ett antal steg, men de är värda att ta en titt på eftersom dessa fem funktioner är riktigt kraftfulla och flexibla. 

För att börja, gå tillbaka till tabellen och klicka på Film i fältrutan. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Skapa en filmbana med kommandot som visas nedan.

LuckyTemplates dela kolumn efter avgränsare i DAX

Vad det här kommandot gör är att ersätta varje mellanslag med ett vertikalt strecktecken. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Detta är på samma sätt som sökvägar måste formateras i LuckyTemplates, så vanligtvis görs detta i Power Query. Men du gjorde det på detta sätt för att se kommandona, som skiljer sig från M-kommandona i Power Query. 

Funktionen skapar den vägstruktur som du behöver, medan kommandot tar bort alla ledande eller efterföljande utrymmen som kan påverka våra resultat. 

Din andra beräknade kolumn är sökvägens längd. Det är ett direkt kommando i funktionen som du tillämpar på filmbanan. Det kommer att berätta hur många objekt som finns på den vägen, så i det här fallet är det antalet ord i titeln. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Samma kommando kan användas för att bestämma till exempel antalet personer i rapporteringskedjan. Men det här fallet är bara en enkel ordräkning. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Nästa sak att göra är att gå till Max Path Index i fältet. Skapa sedan en beräknad tabell som går igenom hela filmtabellen, tar bort filtren och beräknar den maximala sökvägslängden för att veta den längsta titeln i databasen.

Med hjälp av funktionen kan du generera en serie index med en till max väg som räknas med ettor. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Så här ska ditt bord se ut. Du kommer att se på en minut varför detta är värdefullt.

LuckyTemplates dela kolumn efter avgränsare i DAX

För nu, gå tillbaka till LuckyTemplates och klicka på Top Words in Film Path i fältrutan. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Vi kommer att fokusera på denna virtuella tabell vars allmänna lösning var Venn-diagrammet som visades tidigare. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Låt oss bryta ner det för att bättre förstå. På raderna nedan använde vi den virtuella tabellen för de N översta orden, som beräknat nedan. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Därefter beräknas den delade kolumnen med avgränsare på raderna nedan. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Därefter tillämpade vi skärningspunkten mellan dessa två kolumner. Om den skärningen är större än noll, ger vi den en etta eller noll. Till slut gav vi tillbaka resultatet.

LuckyTemplates dela kolumn efter avgränsare i DAX

När du arbetar med komplexa virtuella tabeller är det enklaste sättet att gå in i , där du kan materialisera dessa virtuella tabeller i en DAX-fråga. För det måste du fokusera på linjerna som markeras nedan. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Så kopiera den här koden och låt den sitta i vårt urklipp för nästa steg. 

Bearbeta LuckyTemplates dela kolumner med hjälp av tabellredigeraren 3

I Externa verktyg klickar du på Tabellredigerare 3 . Du kan också använda DAX Studio för detta, men Tabular Editor rekommenderas på grund av dess extra felsökningsfunktioner och andra trevliga funktioner. För DAX-frågor kommer DAX Studio också att fungera bra och det är helt gratis. 

Tillbaka i tabellredigeraren, skapa en ny DAX-fråga genom att klicka på pappersikonen i menyfliksområdet. Skriv EVALUATE på rad 1, klistra in den kopierade koden och tryck sedan på F5.

LuckyTemplates dela kolumn efter avgränsare i DAX

Du får en tabell med Filmvägen och Maxvägen för de två första kolumnerna. För den tredje kolumnen kommer du att använda kommandot och filmbanan för att bestämma vad det första ordet är för varje steg i sökvägsindexet, från ett till nio. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Denna kod returnerar det första ordet som presenteras i den tredje kolumnen. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Försök att titta på en viss film genom att klicka på filterikonen i kolumnrubriken Filmer[Filmsökväg] . Ta till exempel en som är lite längre, säg Captain America: The Winter Soldier. 

LuckyTemplates dela kolumn efter avgränsare i DAX

I den nedre delen av fönstret kan du se att EVALUATE returnerade 1000 rader

LuckyTemplates dela kolumn efter avgränsare i DAX

Hämta alla rader och gå sedan tillbaka och filtrera Movies[Film Path] för Captain America igen.

LuckyTemplates dela kolumn efter avgränsare i DAX

Sök efter Captain America: The Winter Soldier. Markera lämplig ruta och klicka på Stäng.

LuckyTemplates dela kolumn efter avgränsare i DAX

Vad det exakt gör för varje titel är att gå igenom och tillämpa ett till nio index, som visas i den andra kolumnen, och sedan tillämpa det på kommandot.

Du kan se att det första föremålet är Kapten , det andra föremålet är Amerika , det tredje är The , det fjärde är Winter , och det sista föremålet är Soldier . När du kommer från sex till nio är det bara tomt eftersom det har gått förbi antalet ord i just den titeln. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Det du har skapat är en kolumn delad med avgränsare, vilket är exakt samma som uppdelningen med avgränsare i Power Query. 

I LuckyTemplates kan du se att kommandot som körs genom korsningen och IF-satsen. Så om du går tillbaka till din datamängd och öppnar filterrutan kan du se att det översta ordet i filmen är filtrerat så att det är lika med ett. 

LuckyTemplates dela kolumn efter avgränsare i DAX

Detta säger i princip att allt i den högra tabellen (Film) som har ett ord som finns i mållistan i den vänstra tabellen kommer att listas i de övre raderna. Å andra sidan kommer de som är noll att placeras ner.

LuckyTemplates dela kolumn efter avgränsare i DAX




Slutsats

I den här bloggen lärde du dig hur du delar upp kolumner med avgränsare i DAX. Du kommer att tycka att det här verktyget är väldigt användbart när din situation är mycket dynamisk eller din datamodell inte stöder att göra det i Power Query.

Dessutom är exempelproblemet du arbetade med en bra illustration av PATH-kommandonas ovanliga kraft och hur du kan använda dem för att lösa problem på icke-traditionella sätt.


Skapa en datumtabell i LuckyTemplates

Skapa en datumtabell i LuckyTemplates

Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.

LuckyTemplates mobilrapporteringstips och tekniker

LuckyTemplates mobilrapporteringstips och tekniker

Denna korta handledning belyser LuckyTemplates mobilrapporteringsfunktion. Jag ska visa dig hur du kan utveckla rapporter effektivt för mobila enheter.

Professional Service Analytics-rapporter i LuckyTemplates

Professional Service Analytics-rapporter i LuckyTemplates

I denna LuckyTemplates Showcase går vi igenom rapporter som visar professionell serviceanalys från ett företag som har flera kontrakt och kundengagemang.

Microsoft Power Platform-uppdateringar | Microsoft Ignite 2021

Microsoft Power Platform-uppdateringar | Microsoft Ignite 2021

Gå igenom de viktigaste uppdateringarna för Power Apps och Power Automate och deras fördelar och konsekvenser för Microsoft Power Platform.

Vanliga SQL-funktioner: En översikt

Vanliga SQL-funktioner: En översikt

Upptäck några vanliga SQL-funktioner som vi kan använda som sträng, datum och några avancerade funktioner för att bearbeta eller manipulera data.

LuckyTemplates Skapa mall: Guide och tips

LuckyTemplates Skapa mall: Guide och tips

I den här handledningen kommer du att lära dig hur du skapar din perfekta LuckyTemplates-mall som är konfigurerad efter dina behov och preferenser.

Fältparametrar och små multiplar i LuckyTemplates

Fältparametrar och små multiplar i LuckyTemplates

I den här bloggen kommer vi att visa hur man lager fältparametrar med små multiplar för att skapa otroligt användbara insikter och bilder.

LuckyTemplates Rank och anpassad gruppering

LuckyTemplates Rank och anpassad gruppering

I den här bloggen kommer du att lära dig hur du använder LuckyTemplates ranknings- och anpassade grupperingsfunktioner för att segmentera en exempeldata och rangordna den enligt kriterier.

Visar kumulativ total endast upp till ett visst datum i LuckyTemplates

Visar kumulativ total endast upp till ett visst datum i LuckyTemplates

I den här handledningen kommer jag att täcka en specifik teknik kring hur man visar Kumulativ total endast upp till ett specifikt datum i dina bilder i LuckyTemplates.

Punktdiagram: Avancerade anpassade bilder för LuckyTemplates

Punktdiagram: Avancerade anpassade bilder för LuckyTemplates

Lär dig hur du skapar och anpassar punktdiagram i LuckyTemplates, som huvudsakligen används för att mäta prestanda mot mål eller tidigare år.