Pipe In R: Koblingsfunksjoner med Dplyr
I denne opplæringen lærer du hvordan du kobler funksjoner sammen ved å bruke dplyr-røroperatøren i programmeringsspråket R.
I dagens blogg vil vi gå gjennom prosessen med å visualisere korrelasjon, og hvordan du importerer disse bildene til LuckyTemplates. Du kan se hele videoen av denne opplæringen nederst på denne bloggen.
Innholdsfortegnelse
Forstå korrelasjoner
Her er et fint bilde som viser de forskjellige typene korrelasjoner.
Fra venstre har vi den perfekte positive korrelasjonen som betyr at den har en korrelasjonsverdi på 1. Deretter blir den etterfulgt av positive korrelasjoner i synkende rekkefølge som fører til 0.
Den midterste grafen viser ingen korrelasjon som antyder en korrelasjonsverdi lik 0.
Til slutt viser høyre side avtagende negative korrelasjonsverdier fra 0. Grafen lengst til høyre er den perfekte negative korrelasjonen som har en korrelasjonsverdi på -1.
Pakker for Python Correlation
Vi vil bruke fire pakker for denne opplæringen. Vår første pakke er Pandaer som skal brukes til datamanipulering og lagres som variabel pd .
For visualisering vil vi bruke Matplotlib , lagret som plt- variabel for enklere bruk av disse funksjonene. Seaborn , vårt statistiske visualiseringsbibliotek, vil bli lagret som sns . Og til slutt, Numpy , som skal lagres som np , vil bli brukt for lineær algebra.
For dataene vil vi bruke et eksempeldatasett i Seaborn. Deretter bruker vi sns-variabelen, vil vi hente inn diamantdatasettet som vist nedenfor. .
Attributter til dataene
Vi kan se attributtene til dataene våre ved å bruke dataset.info-funksjonen . Denne funksjonen viser oss alle de forskjellige datatypene som vist i den siste kolonnen nedenfor.
Merk at korrelasjon bare fungerer på numeriske variabler, derfor skal vi se på de numeriske variablene mesteparten av tiden. Vi vil imidlertid også lære hvordan du kan utnytte noen av de kategoriske variablene for visualisering.
Python-korrelasjonsdatasettet
Ved å bruke funksjonshodet skrevet som datasett.head , kan vi få de fem øverste radene av dataene våre som skal se slik ut.
Vi har karat i den første kolonnen, etterfulgt av de kategoriske variablene kutt , farge og klarhet , og deretter numeriske verdier for resten av dataene.
Python-korrelasjon: Lage et spredningsplot
Når vi visualiserer korrelasjoner og ser på to variabler, ser vi vanligvis på .
Ved å bruke Seaborn-biblioteket har vi derfor laget vårt spredningsplott ved å bruke spredningsplott-funksjonen der vi sendte inn dataene vi lagret ovenfor som data=datasett . Deretter identifiserte vi X- og Y-variablene - henholdsvis karat og pris .
Her er spredningsplottet vårt laget med Seaborn-biblioteket.
Du kan se at dette spredningsplottet er ganske tett. Det er fordi vi har omtrent 54 000 rader med data og punktene er ikke nødvendigvis representert på den beste måten.
Vi kan trykke på Shift + Tab-tastene for å se de forskjellige måtene å style spredningsplottet på. Den vil vise oss en liste over forskjellige parametere som vi kan legge til spredningsplottet vårt.
Ved å rulle lenger ned vil vi få informasjon om hva hver enkelt av de listede parameterne gjør.
Ytterligere spredningsplottparametere
La oss dykke inn litt. Vi kan lage linewidth=0 fordi de hvite linjene i vårt første spredningsplott, vist nedenfor, noe uklare ting.
Vi ønsker også å justere alfaen slik at vi kan kontrollere opasiteten. La oss bruke alpha=0.2 for vårt eksempel. Men selvfølgelig kan du endre det til 0,1 også.
Hvis vi legger til disse parameterne og klikker på Kjør , kan du se at spredningsplottet vårt blir mer ugjennomsiktig uten de hvite linjene.
Du kan leke med parameterne for å få det beste visuelle du leter etter.
Bruke de kategoriske variablene
Vi kan også bruke noen av våre kategoriske variabler for å forbedre bildene våre. For eksempel vet vi at dataene våre har et kutt for diamanten vår.
Det vi kan gjøre er å sende inn den kuttekategorien ved å bruke hue- parameteren som hue='cut'. Dette vil tillate oss å visualisere disse punktene ved å endre fargene.
Selvfølgelig kan vi legge til flere parametere som alfa, for eksempel. Vi kan legge til det igjen, sette til 0.2, og se hvordan det endrer det visuelle. La oss klikke Kjør og du kan se en liten forskjell.
Vi kan leke med parameterne for å få det visuelle vi leter etter. Vi kan også bruke forskjellige kategorier som klarhet, som gir oss klarhetskategoriene og gir oss også et litt annet syn på den spredningen.
Korrelasjon med andre variabler
Du kan også være interessert i hvordan andre verdier er korrelert enn pris og karat. Så hvis vi ser på et spredningsplott for tabell , som er den numeriske dimensjonen til den diamanten og dybden , kan vi se at det ikke er noen en-til-en lineær sammenheng.
Vi kan også se på to andre variabler som dybde og pris . Basert på grafen kan vi se at datasentrene rundt midtområdet.
Python-korrelasjon: lage et regresjonsplot
La oss gå videre til det vi kaller et regresjonsplott som lar oss evaluere den lineære sammenhengen mellom to variabler.
Så i stedet for spredningsplott-funksjonen, vil vi bruke regplot- funksjonen denne gangen. Vi vil sende i samme struktur - dataene våre og deretter X- og Y-variablene.
Resultatet viser en linje som måler den lineære sammenhengen mellom variablene. Det er også tydelig hvordan verdiene våre sirkler rundt den regresjonslinjen.
Dette er ikke et veldig vakkert bilde for øyeblikket, men vi kan fortsatt optimalisere det for å få et bedre. For eksempel kan vi sende i en stil ved å bruke Matplotlib-variabelen. Vi kan endre stilen til mørk bakgrunn ved å bruke koden plt.style.use('dark_background').
Ta det samme regresjonsplottet og send inn noen nøkkelord for spredningen og linjen vår. La oss bruke rød farge og en linjebredde på 1 for vår regresjonslinje. Dette skrives som line_kws={“color” : “red”, 'linewidth': 1).
For våre scatter-søkeord, la oss angi fargen som hvit, kantfargen som grå, og opasiteten til 0,4 for å skrives som scatter_kws={“color” : “white”, 'edgecolor' : 'grey', 'alpha' : 0.4 ).
Disse parameterne gir oss en litt annen visning vist nedenfor.
Python-korrelasjon: Lage en korrelasjonsmatrise
Så langt er det vi har sett på spredningsplott med bare to variabler, men vi vil kanskje også se på alle våre variabelkorrelasjoner.
Dette utføres ved å bruke vårt datasett med en datarammefunksjon kalt korrelasjon representert som datasett.corr. Og det vi får er en matrise som viser oss korrelasjoner på hver av disse variablene.
Tallene i tabellen ovenfor representerer Pearson-korrelasjonen , som fokuserer på det lineære forholdet mellom alle disse variablene.
Men hvis vi ikke er sikre på om variablene våre er fullstendig lineært korrelert, kan vi bruke en annen type korrelasjon som fokuserer mer på innvirkning enn den lineære delen. Det kalles en Spearman-korrelasjon .
Og vi kan se informasjon om alle disse tingene ved å trykke Shift + Tab. Hvis du blar ned, kan vi se Spearman-rangkorrelasjonen, Pearson-korrelasjonskoeffisienten og ganske mange forskjellige måter å måle dataene våre på.
Ser vi tilbake til vår korrelasjonsmatrise tidligere, vet vi at pris og karat er ganske godt korrelert.
De er fra plottet vårt her og viser at de er ganske lineære ved 0,92.
Hvis vi bruker Spearman-korrelasjonen i stedet, vil virkningen eller rangeringen bli litt høyere ved 0,96.
Disse forskjellige typene korrelasjoner lar oss fange opp forskjellige attributter for korrelasjon mellom disse variablene.
Multippel x enkeltvariabelkorrelasjon
Noen ganger ønsker vi ikke å se a fordi vi er mer bekymret for korrelasjonen mellom alle variablene med én variabel alene (f.eks. pris).
Det vi kan gjøre da er å isolere pris ved å bruke datasett.corr etterfulgt av 'pris' .
Nå kan vi se at prisen er korrelert med alle våre forskjellige numeriske variabler i denne tabellen. Og grunnen til at vi kanskje vil gjøre dette er for visuelle plott.
Så la oss se på å visualisere vår korrelasjonsmatrise med et varmekart.
Python-korrelasjon: Lage et varmekart
Vi kan overføre denne korrelasjonsvariabelen til en Seaborn ved å bruke funksjonen sns.heatmap.
Dette vil gi oss et varmekart som ser slik ut.
Igjen kan vi legge til parametere til våre preferanser. Vi kan sende inn parameteren linewidths=1 og legge til merknader ved å bruke annot=True .
Og du kan se at varmekartet vårt nå ser ganske annerledes ut. Akkurat nå har vi et ganske fint varmekart.
Vi kan se nytten av å legge til linjene og merknadene. Igjen, hvis vi trykker Shift + Tab, vises alle de forskjellige parameterne som kan gå inn.
Prøv deretter å legge til method='spearman ' i koden vår, slik at du vet hvordan du bruker en annen type korrelasjon, avhengig av brukstilfellet.
Varmekart med én variabel
Deretter isolerer vi én variabel og lager et varmekart med korrelasjonen fra negativ til positiv.
Dette vil gi oss dette varmekartet nedenfor.
Vi kan definitivt endre stylingen også. For eksempel kan vi bruke cmap- parameteren som cmap='coolwarm' . Dette endrer fargene til kjølige og varme, og vil også eliminere vår svarte bakgrunn.
Hvis vi klikker Kjør , får vi opp dette varmekartet nedenfor. For kjølig har vi de blå og deretter for varme har vi de røde søylene.
Vi kan også endre retningen for å justere kartet vårt med fargelinjen. Dette gjøres ved å redigere vår sort_values- parameter og legge til ascending=False .
Dette vil gå fra den mest korrelerte (den røde linjen) til den minst korrelerte (den blå linjen).
Python-korrelasjon: Lage en trappvisual
En avansert måte å visualisere vår korrelasjon på er å bruke en maske for å blokkere alle korrelasjonene vi allerede har gjort.
Vi kan gjøre dette med Numpy, ved å bruke noen TRUE og FALSE funksjoner for å gjøre en trapp visuell for korrelasjonene våre.
Slik skal resultatene se ut.
La oss se hvordan vi kan overføre dette til LuckyTemplates.
Trappevisuelt i LuckyTemplates
Først åpner du LuckyTemplates. Jeg har hentet inn et avokado-datasett slik at vi kan se et annet bilde. Du kan se dette datasettet under feltruten. Initialiser visualiseringen ved å klikke på Python-ikonet under Visualiseringer-ruten.
Vi må lage datasettet ved å legge til alle de numeriske variablene som er indikert med ? . Legg dem til ved å klikke i avmerkingsboksene ved siden av disse variablene.
Nå som vi har et datasett, kan vi gå over til Jupyter-notisboken vår og kopiere denne koden vi hadde tidligere.
Deretter kopierer vi koden til Python-skripteditoren i LuckyTemplates.
Deretter vil vi velge vår visuelle, som ville være trappevisualen. Vi går tilbake til Jupyter, kopierer koden som vi brukte for trappbildet vårt.
Lim inn koden i Python script editor.
Den siste tingen å gjøre er å sørge for at vi bruker plt.show , som kreves i Python-skriptet ditt. Legg til plt.show i den siste linjen i koden og klikk på kjør-ikonet øverst til høyre i skriptredigeringsprogrammet.
For en større visuell, strekk boksen litt slik at vi kan se manuset kjører i hjørnet. Vi har vårt visuelle for varmekartet vårt, som ser ganske fint ut.
Og i LuckyTemplates kan vi definitivt se hvordan det visuelle kan endre seg i henhold til datasettet. For eksempel kan vi klikke på Slicer- ikonet i Visualizations-ruten og gå til Type i Fields-ruten.
Det vil gi oss de to typene i datasettet vårt, den konvensjonelle og den organiske . Hvis vi klikker på én type, si organisk , kan du se at varmekartet endres.
Endringer vil også gjelde når vi klikker på den konvensjonelle typen neste.
Husk at vi må ha en kategorisk variabel i datasettet til skriptet vårt for å få disse filtrene til å fungere. Som vi kan se, inkluderer datasettet vi opprettet typen , noe som gjorde det mulig for oss å filtrere det visuelle på den måten.
Konklusjon
I denne bloggen lærte du hvordan du visualiserer korrelasjoner i Python og LuckyTemplates ved å bruke forskjellige metoder som Pearson-korrelasjon og Spearman-rangkorrelasjon.
Nå kan du lage spredningsplott, regresjonsplott, korrelasjonsmatrise, varmekart og trappbilder for å få det beste visuelle bildet for datasettet ditt. Du kan også bruke en rekke parametere for å forbedre stilene og det visuelle.
Beste ønsker,
I denne opplæringen lærer du hvordan du kobler funksjoner sammen ved å bruke dplyr-røroperatøren i programmeringsspråket R.
RANKX fra LuckyTemplates lar deg returnere rangeringen til et spesifikt tall i hver tabellrad som utgjør en del av en liste med tall.
Lær hvordan du demonterer en PBIX-fil for å trekke ut LuckyTemplates-temaer og bilder fra bakgrunnen og bruke den til å lage rapporten din!
Excel Formulas Cheat Sheet: Mellomveiledning
LuckyTemplates-kalendertabell: Hva er det og hvordan du bruker det
Lær hvordan du installerer programmeringsspråket Python i LuckyTemplates og hvordan du bruker verktøyene til å skrive koder og vise visuelle elementer.
Lær hvordan du beregner dynamiske fortjenestemarginer ved siden av LuckyTemplates og hvordan du kan få mer innsikt ved å grave dypere inn i resultatene.
Lær hvordan du sorterer feltene fra kolonner med utvidet datotabell på riktig måte. Dette er en god strategi å gjøre for vanskelige felt.
I denne artikkelen går jeg gjennom hvordan du kan finne de beste produktene dine per region ved å bruke DAX-beregninger i LuckyTemplates, inkludert TOPN- og CALCUATE-funksjonene.
Lær hvordan du bruker en søppeldimensjon for flagg med lav kardinalitet som du ønsker å inkludere i datamodellen din på en effektiv måte.