Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Denne tutorial er en fortsættelse af diskussionen om dplyr- pakken. Du lærer, hvordan du arrangerer, filtrerer og grupperer rækker i R.

Den forrige lektion handlede om kolonneoperationer. Denne gang vil fokus være på rækkeoperationer i dplyr .

Vi dækker det grundlæggende, hvilket inkluderer sortering og filtrering af et datasæt og aggregering og opsummering af poster . For at give dig et overblik over, hvad du kan forvente til denne lektion, tænk på en pivottabel i MS Excel.

Indholdsfortegnelse

Kom godt i gang

Åbn et nyt R-script i RStudio.

I lighed med lektionen om kolonneoperationer vil denne demonstration bruge Lahman-datasættet . Download det ved at lave en hurtig google-søgning.

For at bringe Lahman-pakken ind i R skal du køre bibliotek (Lahman) . For at aktivere dplyr- pakken skal du køre library (tidyverse) . Også, at en bedste praksis for navngivning af konventioner i R er at bruge små bogstaver, så tildel teams i teams .

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Grundlæggende funktioner til rækkeoperationer

1. Arranger rækker i R

Den første række operation i dpylr er arrangement ( ) . Denne funktion giver dig mulighed for at omarrangere rækker. Det fungerer ved først at arrangere datarammen df og derefter de givne felter.

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Lad os f.eks. sortere efter teamID . Kør arrangement (hold, teamID) .

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Hvis du vil have dem arrangeret i faldende rækkefølge, skal du bruge funktionen desc ( ) .

For eksempel, hvis du vil sortere efter år i faldende rækkefølge, skal du køre arrangement (hold, desc(yearID)) .

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Når du gør dette, tildeler du ikke output tilbage til teams . Du ser bare resultatet i konsollen.

Det er også muligt at sortere efter flere kriterier. For eksempel, hvis du vil sortere efter teamID og derefter yearID i faldende rækkefølge, behøver du kun at køre denne kode:

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Når du sorterer rækker, ændrer du ikke dataene. Dataene bliver bare flyttet rundt. Intet bliver tilføjet eller fjernet.

2. Filtrer rækker i R

Filterfunktionen ( ) tilføjer eller fjerner data afhængigt af de valgte kriterier. Dens grundlæggende kode er:

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Lad os som et eksempel få alle data, hvor yearID er større end eller lig med 2000. Følg filterfunktionens format og indtast de nødvendige oplysninger. Så kør den. Glem ikke at tildele dette til et nyt objekt. I dette tilfælde blev det tildelt moderne .

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

For at kontrollere, om rækkerne rent faktisk blev filtreret, kan du bruge dæmpningsfunktionen ( ) . Det angiver antallet af rækker og kolonner i datarammen.

Hvis du kører dim (hold) , vil du se, at datarammen har 2.955 rækker og 48 kolonner.

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Hvis du kører dæmpningsfunktionenmoderne , vil du se, at antallet af rækker er blevet reduceret til 630, mens antallet af kolonner forbliver det samme.

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Rækkerne er blevet afkortet, fordi nogle af posterne går ud over år 2000.

Filtrer rækker efter flere felter

Det er også muligt at filtrere rækker efter flere felter i R. Du skal bruge AND- og OR- sætningerne.

Lad os f.eks. filtrere hold efter område. I dette tilfælde oprettes et nyt objekt ohio . Filterkriterierne er, at teamID kun skal omfatte Cleveland OG Cincinnati.

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Du skal bruge det dobbelte lighedstegnet ( == ) for at kontrollere lighed. Hvis du kun bruger ét lighedstegn, vil R betragte det som en tildelingsoperatør. Brug og-tegnet ( & ) til at repræsentere OG.

For at kontrollere, brug dæmpningsfunktionen . Du vil se, at antallet af rækker er 0.

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Det betyder, at der ikke er nogen hold, hvor de begge er baseret i Cleveland og Cincinnati.

Lad os derefter prøve Cleveland ELLER Cincinnati. OR-operatoren er repræsenteret af røroperatoren ( | ). Så alt hvad du skal gøre er at udskifte og-tegnet med røroperatøren og derefter køre det. Kør derefter dæmpningsfunktionen igen .

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Du vil se, at der er 251 rækker i stedet for nul.

Hvad nu hvis du glemmer at bruge et dobbelt lighedstegn og i stedet kun bruge et? Her er hvad der sker:

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

RStudio viser en meget nyttig fejlmeddelelse i konsollen, der minder dig om at bruge det dobbelte lighedstegnet.

3. Gruppér efter og opsummer rækker i R

Funktionen gruppe efter ( ) giver dig mulighed for at aggregere poster efter udvalgte kolonner og derefter opsummere en anden kolonne baseret på denne aggregering.

Funktionen gruppe efter ( ) følger denne algoritme:

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Lad os som et eksempel gruppere efter teamID og tildele det til et nyt objekt. I dette tilfælde kaldes det nye objekt teams_ID . Udskriv den derefter.

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

I konsollen vil du bemærke, at den første linje siger, at det er en table .

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

En tibble er en ryddig forbedring i forhold til den grundlæggende dataramme. Det er en funktion i pakken, der øger og forbedrer, hvad der er tilgængeligt ud af æsken.

Den anden linje er Grupper . Så dataene er nu grupperet efter teamID-kolonnen.

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Og med det kan du nu bruge funktionen opsummere ( ) på disse grupper.

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Bemærk: opsummeringsfunktionen kan enten være med et s eller z, og vil afhænge af brugen af ​​britisk eller amerikansk engelsk.

Lad os for eksempel opsummere teams_ID og få nogle grundlæggende oversigtsstatistikker. Lad os se efter gennemsnittet, minimum og maksimum af gevinster for hvert hold. Husk at fremhæve hele koden, før du vælger at køre .

Arranger, filtrer og grupper rækker i R ved hjælp af Dplyr

Du kan derefter se i konsollen, at en oversigt over hvert holds statistik vises. Dette minder meget om en pivottabel, hvor du samler og opsummerer data.




Konklusion

For at opsummere er to operationer i dplyr blevet diskuteret. En tidligere tutorial fokuserede på kolonneoperationer. I mellemtiden viste denne aktuelle lektion dig, hvordan du udfører rækkeoperationer ved hjælp af dplyr -pakken i RStudio. Specifikt lærte du at arrangere, filtrere og gruppere rækker i R.

Den næste ting at lære er, hvordan man kombinerer disse to operationer. Brug af alle de funktioner, du har lært indtil nu, vil i høj grad hjælpe dig med at skabe koder i R. En mere nyttig teknik ville dog være en pipeline. Dette vil hjælpe alt med at flyde sammen. Så sørg for også at gennemgå de næste tutorials.


Pipe In R: Tilslutningsfunktioner med Dplyr

Pipe In R: Tilslutningsfunktioner med Dplyr

I denne øvelse lærer du, hvordan du kæder funktioner sammen ved hjælp af dplyr-røroperatoren i programmeringssproget R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX fra LuckyTemplates giver dig mulighed for at returnere rangeringen af ​​et specifikt tal i hver tabelrække, der udgør en del af en liste over tal.

Udpakning af LuckyTemplates-temaer og -billeder fra PBIX

Udpakning af LuckyTemplates-temaer og -billeder fra PBIX

Lær, hvordan du adskiller en PBIX-fil for at udtrække LuckyTemplates-temaer og -billeder fra baggrunden og bruge den til at oprette din rapport!

Excel Formler Snydeark: Mellemvejledning

Excel Formler Snydeark: Mellemvejledning

Excel Formler Snydeark: Mellemvejledning

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

Python i LuckyTemplates: Sådan installeres og konfigureres

Python i LuckyTemplates: Sådan installeres og konfigureres

Lær, hvordan du installerer programmeringssproget Python i LuckyTemplates, og hvordan du bruger dets værktøjer til at skrive koder og vise billeder.

Beregning af dynamiske fortjenestemargener – nem analyse af LuckyTemplates med DAX

Beregning af dynamiske fortjenestemargener – nem analyse af LuckyTemplates med DAX

Lær, hvordan du beregner dynamiske fortjenstmargener ved siden af ​​LuckyTemplates, og hvordan du kan få mere indsigt ved at grave dybere ned i resultaterne.

Sortering af datotabelkolonner i LuckyTemplates

Sortering af datotabelkolonner i LuckyTemplates

Lær, hvordan du sorterer felterne fra kolonner med udvidet datotabel korrekt. Dette er en god strategi at gøre for vanskelige felter.

Find dine topprodukter for hver region i LuckyTemplates ved hjælp af DAX

Find dine topprodukter for hver region i LuckyTemplates ved hjælp af DAX

I denne artikel gennemgår jeg, hvordan du kan finde dine topprodukter pr. region ved hjælp af DAX-beregninger i LuckyTemplates, herunder funktionerne TOPN og CALCUATE.

Junk Dimension: Hvad er det, og hvorfor det er alt andet end junk

Junk Dimension: Hvad er det, og hvorfor det er alt andet end junk

Lær, hvordan du bruger en uønsket dimension til flag med lav kardinalitet, som du ønsker at inkorporere i din datamodel på en effektiv måde.