Video: Hur du sätter igång din Mac 2024
Om du har en smält dataset (en dataset i lång format) är du redo att omforma den med R. För att illustrera att omformningsprocessen håller alla dina data intakta, försök att rekonstruera originalet: >> dcast (mgoals, Venue + Game-variabel, summa) Spelplats Granny Geraldine Gertrude 1 1: a Bruges 12 5 11 2 2: a Gent 4 4 5 3 3: e Gent 5 2 6 4 4 Brugge 6 4 7
Kan du se hur dcast () tar en formel som sitt andra argument? Mer om det om en minut, men först inspektera dina resultat. Den ska matcha den ursprungliga dataramen.
Du använder funktionen dcast () för att kasta en smält dataram. För att vara tydlig använder du detta för att konvertera från ett långformat till ett brett format, men du kan också använda detta för att aggregera till mellanliggande format, som liknar hur ett pivottabell fungerar.
Funktionen dcast () tar tre argument:
-
: En smält dataram. formel
-
: En formel som anger hur du vill kasta data. Denna formel tar formen x_variable ~ y_variable. Men det är förenklat att göra en poäng. Du kan använda flera x -variabler, flera y -variabler och till och med z -variabler. kul. aggregat
-
: En funktion som ska användas om gjutformeln resulterar i datagruppering (till exempel längd (), summa () eller medelvärde ()).
Om du vill få ett bord med platsen som går ner i raderna och spelaren över kolumnerna, din gjutformel ska vara Venue ~ variabel: >> dcast (mgoals, Venue ~ variabel summa) Plats Granny Geraldine Gertrude 1 Bruges 18 9 18 2 Gent 9 6 11
Det är faktiskt möjligt att ha mer komplicerade gjutformler. Enligt hjälpsidan för dcast (), tar gjutformeln detta format:
x_variable + x_2 ~ y_variable + y_2 ~ z_variable ~ …
Observera att du kan kombinera flera variabler i varje dimension med plusteckenet (+), och du separerar varje dimension med en tilde (~). Om du har två eller flera plattor i formeln (det vill säga, du inkluderar en
z
-variabel), blir resultatet ett multidimensionellt system.
Så, för att få en sammanfattning av målen enligt Venue, spelare (variabel) och Game, gör du följande: >> dcast (mgoals, Venue + variabel ~ Spel, summa) Platsvariabel 1: a 3: a 4: e 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 till det du borde förstår data i långformat är att både grafikpaketet gitterplattformen och ggplot2 gör stor användning av data i långformat.Fördelen är att du enkelt kan skapa tomter av dina data som jämför olika undergrupper.