skapa detaljnivå uttryck i Tableau

detaljnivå uttryck (även känd som LOD-uttryck) kan du beräkna värden på datakällnivå och visualiseringsnivå. LOD-uttryck ger dig dock ännu mer kontroll över den granularitetsnivå du vill beräkna. De kan utföras på en mer granulär nivå (inkludera), en mindre granulär nivå (utesluta) eller en helt oberoende nivå (fast).

den här artikeln förklarar vilka typer av LOD-uttryck du kan använda i Tableau, samt när du ska använda dem och hur du formaterar dem. Det använder också ett exempel för att visa hur man skapar ett enkelt LOD-uttryck.

så här skapar du LOD-uttryck

Följ stegen nedan för att lära dig hur du skapar och använder ett LOD-uttryck i Tableau.

Steg 1: Ställ in visualiseringen

  1. öppna Tableau Desktop och anslut till Sample-Superstore sparade datakälla.

  2. navigera till ett nytt kalkylblad.

  3. från datafönstret, under dimensioner, dra Region till Kolumnhyllan.

  4. från fönstret Data, under Åtgärder, dra försäljning till raden hyllan.

    ett stapeldiagram som visar summan av försäljningen för varje region visas.

steg 2: Skapa LOD-uttrycket

istället för summan av all försäljning per region, kanske du också vill se den genomsnittliga försäljningen per kund för varje region. Du kan använda ett LOD-uttryck för att göra detta.

  1. Välj Analys > Skapa Beräknat Fält.

  2. gör följande i Beräkningsredigeraren som öppnas:

    • namnge beräkningen, försäljning per kund.

    • ange följande LOD-uttryck:

      { INCLUDE : SUM() }

  3. när du är klar klickar du på OK.

    det nyskapade lod-uttrycket läggs till i datafönstret under mått. Mer information om vilka typer av LOD-uttryck du kan använda finns i avsnittet typer av LOD-uttryck.

steg 3: Använd lod-uttrycket i visualiseringen

  1. från fönstret Data, under Åtgärder, dra försäljning per kund till raden hyllan och placera den till vänster om SUM(försäljning).

  2. på Radhyllan högerklickar du på försäljning per kund och väljer mått (summa) > genomsnitt.

    du kan nu se både summan av all försäljning och den genomsnittliga försäljningen per kund för varje region. Till exempel kan du se att i den centrala regionen uppgick försäljningen till cirka 500 000 USD med en genomsnittlig försäljning för varje kund cirka 800 USD.

Använd ett snabbt LOD-uttryck

från och med Tableau 2021.1 kan du skapa ett fast LOD-uttryck utan att behöva ange hela beräkningen i beräkningsdialogrutan.

det finns två sätt att skapa en snabb LOD-beräkning.

  1. Ctrl-klicka (eller Kommando-klicka på en Mac) det mått du vill aggregera och dra det till den dimension du vill aggregera på. Ett nytt fält visas med en ny fast LOD-beräkning.

     en animerad gif av processen som beskrivs ovan

  2. som ett andra alternativ väljer du det mått du vill aggregera och kontrollerar sedan (eller Kommandoklickar på en Mac) för att välja den dimension du vill aggregera på.

    • högerklicka på de valda fälten och välj Skapa > Quick LOD.

    • välj OK i beräkningsdialogrutan som visas för att slutföra skapandet av LOD.

    en gif som visar processen att skapa en snabb LOD-beräkning.

typer av LOD-uttryck

det finns tre typer av LOD-uttryck som du kan skapa i Tableau:

  • fast
  • inkludera
  • exkludera

du kan också omfattning en LOD uttryck till tabellen. Detta kallas en tabell-Scoped LOD uttryck.

fast

fast detaljnivå uttryck beräkna ett värde med de angivna dimensionerna, utan hänvisning till dimensionerna i vyn.

exempel

följande fasta detaljnivå uttryck beräknar summan av försäljningen per region:

{FIXED : SUM()}

denna nivå av detaljuttryck, namngiven, placeras sedan på Text för att visa total försäljning per region.

visningsnivån för detaljer är plus , men eftersom fasta detaljnivåuttryck inte beaktar visningsnivån för detaljer använder beräkningen endast den dimension som refereras i beräkningen, som i detta fall är Region. På grund av detta kan du se att värdena för de enskilda staterna i varje region är identiska. Mer information om varför detta händer finns i aggregering och detaljnivå uttryck.

om nyckelordet INCLUDE hade använts i detaljnivåuttrycket istället för fixat, skulle värdena vara olika för varje tillstånd, eftersom Tableau skulle lägga till dimensionen i uttrycket () med eventuella ytterligare dimensioner i vyn () när värden för uttrycket bestäms. Resultatet skulle vara följande:

inkludera

inkludera nivå av detaljuttryck beräkna värden med de angivna dimensionerna utöver de dimensioner som finns i vyn.

inkludera detaljnivå uttryck kan vara användbart när du vill beräkna på en fin detaljnivå i databasen och sedan aggregera och visa på en grövre detaljnivå i vyn. Fält baserade på inkludera detaljnivå uttryck ändras när du lägger till eller tar bort dimensioner från vyn.

exempel 1

följande inkluderar detaljnivå expression beräknar total försäljning per kund:

{ INCLUDE : SUM() }

när beräkningen placeras på Radhyllan, aggregerad som genomsnitt, och dimensionen placeras på Kolumnhyllan, visar vyn det genomsnittliga kundförsäljningsbeloppet per region:

om åtgärden sedan dras till Radhyllan illustrerar resultatet skillnaden mellan den totala försäljningen för varje region och den genomsnittliga försäljningen per kund för varje region:

exempel 2

följande inkluderar detaljnivå uttryck beräknar summan av försäljningen på en per-state basis:

{ INCLUDE : SUM(Sales)}

beräkningen placeras på Radhyllan och aggregeras som ett medelvärde. Den resulterande visualiseringen är i genomsnitt summan av försäljningen per stat över kategorier.

när Segment läggs till i Kolumnhyllan och beräkningen flyttas till etikett uppdateras LOD-uttrycket. Nu kan du se hur den genomsnittliga summan av försäljningen per stat varierar mellan kategorier och segment.

exkludera

exkludera detaljnivå uttryck deklarera dimensioner att utelämna från vyn detaljnivå.

exkludera detaljnivå uttryck är användbara för ’procent av total’ eller ’skillnad från totalt genomsnitt’ scenarier. De är jämförbara med sådana funktioner som totaler och referenslinjer.

EXCLUDE Detail expression kan inte användas i radnivåuttryck (där det inte finns några dimensioner att utelämna), men kan användas för att ändra antingen en vynivåberäkning eller något däremellan (det vill säga Du kan använda en EXCLUDE-beräkning för att ta bort dimension från någon annan detaljnivå uttryck).

exempel 1

följande exkluderar detaljnivå expression beräknar den genomsnittliga försäljningssumman per månad och exkluderar sedan månadskomponenten:

{EXCLUDE : AVG({FIXED : SUM()})}

mer information om hur du skapar datumfält för månad / år finns i anpassade datum(länken öppnas i ett nytt fönster).

Lägg märke till att detta är en kapslad nivå av detaljuttryck—det vill säga en nivå av detaljuttryck inom en annan nivå av detaljuttryck.

sparas som, beräkningen kan sedan subtraheras från summan av försäljningen per månad med hjälp av en ad hoc-beräkning på Radhyllan:

med månad() på Kolumnhyllan skapar detta en vy som visar skillnaden mellan den faktiska försäljningen per månad under en fyraårsperiod och den genomsnittliga månatliga försäljningen för hela fyraårsperioden:

exempel 2

följande detaljnivå expression exkluderar från en beräkning av summan av :

{EXCLUDE : SUM()}

uttrycket sparas som .

för att illustrera hur detta uttryck kan vara användbart, överväga först följande vy, som bryter ut summan av försäljningen per region och månad:

släppa på färgnyanser vyn för att visa den totala försäljningen per månad men utan den regionala komponenten:

tabell-Scoped

det är möjligt att definiera en detaljnivå uttryck på tabellnivå utan att använda någon av de scoping sökord. Till exempel returnerar följande uttryck det minsta (tidigaste) orderdatumet för hela tabellen:

{MIN()}

detta motsvarar en fast detaljnivå uttryck utan dimension deklaration:

{FIXED : MIN()}

lod-uttryckssyntax

detaljnivå Uttryckssyntax

en detaljnivå uttryck har följande struktur:

{ <dimension deklaration >: <aggregerat uttryck>}

elementen i en detaljnivå uttryck beskrivs i följande tabell.

Element beskrivning
{ } hela detaljnivån är innesluten i lockiga hängslen.

det första elementet efter öppningen lockigt stag är en av följande scoping nyckelord:

  • fast

    fast detaljnivå uttryck beräkna värden med de angivna dimensionerna utan hänvisning till vyn detaljnivå—det vill säga utan hänvisning till några andra dimensioner i vyn.

    fast nivå av detaljuttryck ignorerar också alla filter i vyn än kontextfilter, datakällfilter och extraktfilter.

    exempel: { FIXED : SUM() }

    för mer information om fasta detaljnivå uttryck, och för några exempel fast detaljnivå scenarier, se avsnittet fast.

  • inkludera

    inkludera nivå av detaljuttryck beräkna värden med de angivna dimensionerna utöver de dimensioner som finns i vyn.

    inkludera detaljnivå uttryck är mest användbara när du inkluderar en dimension som inte finns i vyn.

    exempel: { INCLUDE : SUM() }

    för mer information om inkludera detaljnivå uttryck, och för några exempel inkludera detaljnivå scenarier, se avsnittet Inkludera.

  • Uteslut

    Uteslut detaljnivå uttryck uttryckligen ta bort dimensioner från uttrycket—det vill säga de subtrahera dimensioner från vyn detaljnivå.

    Uteslut detaljnivå uttryck är mest användbara för att eliminera en dimension i vyn.

    exempel: {EXCLUDE : SUM()}

    för mer information om exkludera detaljnivåuttryck och för vissa exempel exkludera detaljnivåscenarier, se avsnittet exkludera .

  • tabell-Scoped

    i fallet med en tabell-scoped detaljnivå uttryck, ingen scoping sökord krävs. För mer information, se avsnittet tabell-Scoped.

<dimensiondeklaration>

anger en eller flera dimensioner till vilka det sammanlagda uttrycket ska sammanfogas. Använd kommatecken för att separera dimensioner. Exempelvis:

, ,

för detaljnivåuttryck kan du använda alla uttryck som utvärderas som dimension i en dimensionalitetsdeklaration, inklusive Datumuttryck.

detta exempel kommer att aggregera summan av försäljningen på årsnivå:

{FIXED YEAR() : SUM(Sales)}

detta exempel kommer att aggregera summan av försäljningen för dimensionen, stympad till dagen datum delen. Eftersom det är ett INCLUDE-uttryck kommer det också att använda dimensionerna i vyn för att aggregera värdet:

{INCLUDE DATETRUNC('day', ) : AVG(Profit)}

notera: Det rekommenderas starkt att du drar fält till beräkningsredigeraren när du skapar dimensions deklarationer, istället för att skriva dem. Om du till exempel ser år() på en hylla och sedan skriver det som dimensiondeklaration matchar det inte fältet på hyllan. Men om du drar fältet från hyllan till uttrycket blir det DATEPART(’år’), och det matchar fältet på hyllan.

med namngivna beräkningar (det vill säga beräkningar som du sparar i datafönstret, i motsats till ad hoc-beräkningar, som du inte namnger), kan Tableau inte matcha namnet på en beräkning till dess definition. Så om du skapar en namngiven beräkning, mycalculation, definierad enligt följande:

MyCalculation = YEAR()

och sedan skapade du följande utesluta detaljnivå uttryck och använde den i vyn:

{EXCLUDE YEAR() : SUM(Sales)}

då skulle Myberäkning inte uteslutas.

på samma sätt, om det uteslutna uttrycket specificerat Mykalkulation:

{EXCLUDE MyCalculation : SUM(Sales)}

då år () skulle inte uteslutas.

: ett kolon skiljer dimensionsdeklarationen från det aggregerade uttrycket.
<aggregate expression> aggregate expression är den beräkning som utförs för att definiera måldimensionaliteten.

Se även

introduktion till detaljnivå uttryck(länk öppnas i ett nytt fönster)

en djupare titt på LOD uttryck(länk öppnas i ett nytt fönster)

dykning i LOD uttryck(länk öppnas i ett nytt fönster)

Topp 15 LOD uttryck(länk öppnas i ett nytt fönster)

förstå LOD uttryck(länk öppnas i ett nytt fönster ett nytt fönster)

hur detaljnivå uttryck fungerar i Tableau