Hur Kasta data till Wide Format i forskning

August 31

Om du har en smält dataset (en datamängd i långt format), är du redo att omforma det med R. För att illustrera att processen med omformningen håller alla dina data intakt, försök att rekonstruera den ursprungliga:

> Dcast (mgoals, Venue + Game ~ variabel, summa)
Spelställe Granny Geraldine Gertrude
1 1st Bruges 12 5 11
2 2nd Ghent 4 4 5
3 3rd Ghent 5 2 6
4 4th Bruges 6 4 7

Kan du se hur dcast () tar en formel som sitt andra argument? Mer om det i en minut, men först inspektera dina resultat. Det ska matcha den ursprungliga dataramen.

Nästa, kanske du vill göra något mer intressant - till exempel skapa en sammanställning av mötesplats och spelare.

Du använder dcast () för att kasta en smält dataram. För att vara tydlig, du använder detta för att konvertera från ett långt format till ett brett format, men du kan också använda det här för att aggregera i mellanformat, liknande det sätt en pivottabellen fungerar.

Den dcast funktion () tar tre argument:

  • data: En smält dataram.
  • formel: En formel som anger hur du vill kasta datan. Denna formel har formen x_variable ~ y_variable. Men det är förenklat det för att göra en punkt. Du kan använda flera x -Variabler, flera y -Variabler och även z -Variabler.
  • fun.aggregate: En funktion för att använda om gjutning formelresultat i uppgifter aggregering (t.ex. längd (), sum (), eller medelvärdet ()).

Så, för att få den sammanställning av plats mot spelare, måste du använda dcast () med en gjutning formel variabel ~ Venue. Observera att gjutnings formel refererar till kolumner i din smält dataram:

> Dcast (mgoals, rörlig ~ Venue, summa)
variabel Brugge Gent
1 Granny 18 9
2 Geraldine 9 6
3 Gertrude 18 11

Om du vill få ett bord med plats kör ner raderna och spelaren över kolumnerna, bör din gjutning formel vara Venue ~ variabel:

> Dcast (mgoals, Venue ~ variabel, summa)
Venue Granny Geraldine Gertrude
1 Brugge 18 9 18
2 Ghent 9 6 11

Det är faktiskt möjligt att ha mer komplicerade gjutning formler. Enligt hjälpsidan för dcast (), tar gjutning formel detta format:

x_variable + x_2 ~ y_variable + y_2 ~ z_variable ~ ...

Observera att du kan kombinera flera variabler i varje dimension med plustecken (+), och du separera varje dimension med ett tilde (~). Dessutom, om du har två eller flera tilde i formeln (dvs inkludera dig en z -variable), kommer ditt resultat bli en flerdimensionell array.

Så, för att få en översikt över mål av Venue spelare (variabel), och Game, gör du följande:

> Dcast (mgoals, Venue + variabel ~ Spel, summa)
Plats variabel 1. 2. 3. 4.
1 Brugge Granny 12 0 0 6
2 Brugge Geraldine 5 0 0 4
3 Brugge Gertrude 11 0 0 7
4 Gent Granny 0 4 5 0
5 Gent Geraldine 0 4 2 0
6 Gent Gertrude 0 5 6 0

En av anledningarna du bör förstå data i långt format är att båda grafikpaket gitter och ggplot2 stor utsträckning använda uppgifter långt format. Fördelen är att du enkelt kan skapa tomter av dina data som jämför olika undergrupper.

Hur Kasta data till Wide Format i forskning

> Bibliotek (ggplot2)
> Ggplot (mgoals, aes (x = variabeln, y = värde, fyll = Spel)) + geom_bar ()