Var inte rädd för djupare relationer

På grund av hur relationer fungerar är det viktigare än någonsin att förstå var fält kommer från, deras domän och vad null representerar. Kom ihåg att alla som visar visualiseringen utan tillgång till sidan Datakälla eller rutan Data kommer att förlita sig på rubriken eller annan information som visas av skaparen för att tolka visualiseringen på rätt sätt.

Obs! Om du inte känner till principerna bakom datakällor som använder relationer rekommenderar vi att du läser Var inte rädd för relationer innan du sätter igång med det här avsnittet.

Varför är inte alla datumfält lika?

Det är viktigt att minnas att bara för att två fältnamn innehåller ordet Datum så betyder det inte att innehållen i fälten är identiska. Vi kan titta på ett exempel som rör nivån på År. Vi bryr oss inte om värdena för månader och dagar utan fokuserar endast på vilka år som fälten omfattar.

Det finns flera fält i Datauppsättningen Bookshop med datatypen Datum.

  • Födelsedag
  • Publiceringsdatum
  • Försäljningsdatum
  • År vunnet och År upprättat innehåller också datuminformation fast de är numeriska fält.

Men domänen – värdena i varje fält – skiljer sig. Dra varje fält i turordning till hyllan rader och titta på antalet markeringar i det nedre vänstra hörnet. Ta bort varje fält innan du drar in nästa.

  • ÅR(Födelsedag) har 27 markeringar, vilket innebär att domänen innehåller 27 olika år.
  • ÅR([Publiceringsdatum]) har 15 markeringar, så dess domän består av 15 år.
  • År vunnet har 11 markeringar
  • År upprättat har fyra markeringar
  • ÅR([Försäljningsdatum]) har en markering

Den här skillnaden i domän är viktig att ha i åtanke. Om vi relaterade tabellen Utgåva och Pris på ÅR([Publiceringsdatum]) till År vunnet så kan vi få analyser som använder sig av en inre koppling och därmed trimmas ned till endast de år när ett pris vanns – vilket därmed tar bort alla böcker från år utan priser. (Observera att det här inte är samma sak som att filtrera bort böcker utan priser. Böcker som inte vunnit pris men som publicerades samma år som en prisvinnande bok kommer att finnas kvar. Alla böcker från år utan pris kommer helt att tas bort. Filtreringsåtgärden från kopplingen är på årsnivå, inte bok.)

Exempel: Publiceringsdatum och födelsedag

Om vi drar Publiceringsdatum till Kolumner och Födelsedag till Rader så får vi en tabell med Abc:er. Du kan ladda ner arbetsboken och utforska tabellen själv. (Kräver Tableau Desktop 2020.2 eller senare.)

Abc är en platshållare eftersom det inte finns några andra data än år. Tableau har inga värden för att skapa markeringar men Abc visar var markeringarna skulle kunna hamna.

Observera att det finns mycket tomrum i den här tabellen. Det finns ingen platshållare för Publiceringsår 2180 och Födelsedag 2133. Det innebär att författaren som föddes 2133 inte publicerade år 2180.

Visst. Men varför bryr vi oss?

Tänk dig att vill utföra någon typ av analys över tid. Ökar försäljningen av inbundna böcker över tid? Du kan tänka dig ditt diagram som en tidslinje som filtrerar Format till endast Inbunden med Försäljning(Antal) på Rader och datum på Kolumner. Men vilket datumfält? Publiceringsdatum? Födelsedag? Försäljningsdatum? Dessa fält har tydliga namn och det är rätt uppenbart att om vi har en fråga om försäljning så ska vi använda Försäljningsdatum. Det är dock inte alla datauppsättningar som har tydliga namn. Om fälten hette något som Datum1 och Datum3 så skulle det vara svårare att veta skillnaden. Särskilt om den analytiska frågan inte är helt klart utformad.

Vilken tabell ett fält kommer från och vad domänen i fältet representerar har avgörande inverkan på analys.

Genom att ändra datumfältet så kan vi helt ändra analysen. Överväg dessa två visualiseringar:

Den första kan tolkas som ”Hur många böcker skrevs av författare födda varje år?”. Den besvarar frågor som ”Har äldre författare skrivit fler böcker?” (Nej) eller ”Författare födda vilket år är mest produktiva?” (2155).

Den andra skulle kunna tolkas som ”Hur många böcker publicerades varje åt?”. Den besvarar frågor som ”Under vilket år publicerades flest böcker?” (2188) eller ”Publiceras det ett jämnt antal böcker över tid?” (Nej).

Det är krångligt att uttrycka frågan för visualiseringen som använder sig av födelsedag eftersom det är en krånglig kombination med koncept. Men Tableau är inte dömande, du får ställa vilka frågor du vill – oavsett om det var vad du menade eller inte. Det är viktigt att tänka på. Om du hämtar in Datum3 när du borde ha använt Datum1 så kommer Tableau att ge dig en visualisering. Men alla datumfält innebär inte samma sak och det är upp till författaren att veta vilket fält som ska användas för en korrekt analys.

Mer information om vikten av vilken tabell ett fält kommer från finns i det här blogginlägget(Länken öppnas i ett nytt fönster).

Vad innebär saknade data?

Det finns en skillnad mellan noll och null.

Noll innebär att vi mätte och något inte finns där. Vi vet värdet och det är noll. Om jag har noll fortkörningsböter så kör jag antagligen inte för fort särskilt ofta.

  • Märk väl: 0 och 1 används ofta med innebörden sant/falskt eller för andra binomialvärden som ja/nej eller godkänt/underkänt. I det här fallet används noll som en etikett, inte som numeriskt värde.

Null innebär att vi inte vet: vi har inte mätt eller så förde vi inte in data. Om mitt registerutdrag bara är tomt för fortkörning så vet vi inte om jag kör för fort eller inte.

Null kan representera antingen saknade data eller data som inte finns.

  • Om värdet för fortkörningsböter i mitt registerutdrag är null så är det möjligt att jag har en fortkörningsbot som inte registrerats. Vi bör anta att data saknas.
  • Data som inte finns kan anges som N/A men oftast registreras de helt enkelt inte eftersom vi inte behöver ha koll på omöjliga saker. Hur många fortkörningsböter fick jag när jag åkte buss? Det är data som antagligen inte kommer finnas i datauppsättningen. I en matris med Transportmedel och Fortkörningsböter så finns det kombinationer som inte vore logiska. Vi bör anta att dessa data inte finns.

När null har en innebörd

Du behöver ha kunskap om data för att kunna känna igen om ett null verkligen är okänt (brist på information om antal fortkörningsböter) eller om det representerar data som inte finns (brist på information om fortkörningsböter som busspassagerare). Är dina data tillräckligt tillförlitliga för att en brist på information kan tas som data som inte finns i stället för data som saknas? När sakkunskap tillämpas kan null bli meningsfulla.

Om vi tittar igen i tabellen med Abc kan vi analysera utrymmena utan platshållare. Vi antar att dessa data är tillförlitliga och att ett null innebär att data inte finns i stället för att de är ofullständiga.

Avsaknaden av en platshållare innebär att en författare föddes det året (så att raden finns) och att en bok publicerades det året (så att kolumnen finns), men den publicerade boken skrevs inte av en författare född det året (så cellen är tom). Därmed kan vi ge en meningsfull etikett till det tomma utrymmet: Ingenting publicerat. Vi skulle till och med kunna analysera dessa null – till exempel, för de datum som förekommer i data, hur många år gick varje författare utan att publicera en bok?

Obs! Det finns även tomrum i domänen Födelsedagar. Inga författare föddes 2131 eller 2132 så År sträcker sig från 2130 till 2133 (raderna för 2131 och 2132 finns inte). Dessa saknade år kan tolkas som ”inga böcker i den här datauppsättningen hade författare födda under de åren”. Precis som vi pekade på ovan när vi pratade om domänen för datumfälten är dock det faktum att det finns värden som saknas i domänen viktig information att ta i beaktande när du skapar relationer eller väljer vilket fält som ska användas för en rubrik eller axel i en visualisering.

Mer information om att arbeta med null i relationer finns i det här blogginlägget(Länken öppnas i ett nytt fönster).

Praktiska övningar

Skriv en rubrik för varje visualisering. Kan du beskriva vad som händer på ett enkelt sätt? Ladda ner arbetsboken för att utforska live-visualiseringarna. (Den här arbetsboken använder en något modifierad version av Datauppsättningen Bookshop och använder bara två tabeller. Datumfälten har justerats så att du kan användas som det relaterade fältet.)

Så här läser du in matrisen med visualiseringar: 

  • Fälten visar antal utgåvor (lila) och antal pris (grönt) per år.
  • Varje kolumn har ett annorlunda datumfält för axeln. Vänster kolumn är Publiceringsår från tabellen Ugåva, mittenkolumnen är År vunnet från tabellen Pris och höger kolumn är ett beräknat fält som använder publiceringsdatum, men om det fältet är null använder det sig av År vunnet (den här beräkningen används för att se till att bägge domäner är fullständigt representerade).
  • Varje rad är en annan relation för hur tabellen Pris och Utgåva kombineras. Den översta raden relaterar tabellerna på bok-ID, mellanraden relaterar dem till år och den nedre raden relaterar dem till både bok-ID och år.
  • Staplarna för år 2183 är tjockare för att göra det enklare att jämföra. I lösningen nedan så är det året vars värden tittas på i detalj.
  • Observera att de två skuggade visualiseringarna har identiska värden.

Om du fastnar

Gå igenom varje del av visualiseringen steg-för-steg. Titta på datakällans struktur, axeln och rubrikerna och de fält som använts för markeringarna (samt vilka tabeller de kommer från). Tänk på de null som finns och varför de kan vara där. Visa data för en specifik markering eller två för att se vilka poster de innehåller.

  • Datakällan är Pris relaterad till Utgåvor för Bok-ID.
  • Dataaxeln är Publiceringsår
  • Värdena är Antal priser och Antal utgåvor.

Testa att välja en enda markering i visualiseringen och definiera den. För år 2183 visar visualiseringen att det finns sju utgåvor och tre priser. Använd Visa underliggande data för att utreda vilka poster som representeras av varje markering.

Utgåvor

Priser

Sammantaget kan det här tolkas som ”returnera de sju böcker som publicerats 2183 och lista för de böckerna eventuella priser som de vunnit oavsett när de vann priset”. TM925 publicerades ursprungligen 2179 och den inbundna utgåvan vann två priser det året. 2183 publicerades en annan utgåva av boken, kanske i pocket. Värdet för Antal priser är knutet till boken, inte året.

Så den övergripande visualiseringen skulle kunna tolkas som ”antal utgåvor publicerade varje år och hur många priser som vanns av böcker publicerade det året” eller ”antalet utgåvor publicerade varje år samt antal priser som vanns av de böckerna”.

Lösning på den praktiska övningen

År 2183 – de tjockare staplarna – är det år som fokuseras på för tolkning. Information om utgåvor är i lila och information om priser är i grönt. År 2187 skiljs även ut i beskrivningarna eftersom det är ett år då inga priser vanns men böcker publicerades. Därmed är det en bra illustration av hur viktigt det är vilket datumfält som används för axeln. Den här nyansen visas i blått i beskrivningen. Vikten av de fält som anges för att ställa in relationen visas i rosa.

Den här visualiseringen tillhandahålls av bekvämlighetsskäl men du kan få en bättre upplevelse om du laddar ner arbetsboken och öppnar den i Tableau Desktop 2020.2 eller senare så att du kan använda dig av interaktivitet som verktygstips och Visa data. Om du föredrar att ta en närmare titt på bladen så kan du högerklicka på endera instrumentpanelsflik längst ner och välja Visa alla blad. Det gör alla enskilda visualiseringar tillgängliga och från varje blad kan du se rutan Data och redigeringsmiljön, inklusive vilka fält som finns på vilka hyllor. Observera att för att kunna uppnå de tre olika relationerna (raderna i matrisen ovan) så finns det tre olika datakällor.

Relaterade resurser

Känns det överväldigande? Vill du gå tillbaka ett steg? Läs avsnittet Var inte rädd för relationer.

Är du redo att ta dig an beräkningar med relationer? Läs Var inte rädd för beräkningar i relationer.

Vill du veta mer om tekniken bakom relationer – direkt från produkthanteringsteamet? I så fall får du inte missa serien om relationer i Tableau-bloggen.

Du kan också titta på videopoddar om relationer från Action Analytics(Länken öppnas i ett nytt fönster), t.ex. Why did Tableau Invent Relationships?(Länken öppnas i ett nytt fönster) Klicka på ”Video Podcast” (Videopodd) under Library(Länken öppnas i ett nytt fönster) (Bibliotek) om du vill veta mer.

Tack för din feedback!Din feedback har skickats in. Tack!