Hoe de verzamelfunctie in r te gebruiken (met voorbeelden)
De functie collect() uit het Tidyr- pakket kan worden gebruikt om een sleutel-waardepaar over meerdere kolommen te “verzamelen”.
Deze functie gebruikt de volgende basissyntaxis:
verzamelen (gegevens, sleutelwaarde, etc.)
Goud:
- data : Naam van het dataframe
- key : Naam van de sleutelkolom die moet worden gemaakt
- waarde : Naam van de waardekolom die moet worden gemaakt
- … : geef de kolommen op waaruit u wilt verzamelen
De volgende voorbeelden laten zien hoe u deze functie in de praktijk kunt gebruiken.
Voorbeeld 1: Verzamel de waarden van twee kolommen
Stel dat we het volgende dataframe in R hebben:
#create data frame df <- data. frame (player=c('A', 'B', 'C', 'D'), year1=c(12, 15, 19, 19), year2=c(22, 29, 18, 12)) #view data frame df player year1 year2 1 to 12 22 2 B 15 29 3 C 19 18 4 D 19 12
We kunnen de functie collect() gebruiken om als volgt twee nieuwe kolommen te maken, genaamd „year“ en „points“:
library (tidyr) #gather data from columns 2 and 3 gather(df, key=" year ", value=" points ", 2:3) player year points 1 A year1 12 2 B year1 15 3 C year1 19 4 D year1 19 5 A year2 22 6 B year2 29 7 C year2 18 8 D year2 12
Voorbeeld 2: Verzamel waarden uit meer dan twee kolommen
Stel dat we het volgende dataframe in R hebben:
#create data frame df2 <- data. frame (player=c('A', 'B', 'C', 'D'), year1=c(12, 15, 19, 19), year2=c(22, 29, 18, 12), year3=c(17, 17, 22, 25)) #view data frame df2 player year1 year2 year3 1 A 12 22 17 2 B 15 29 17 3 C 19 18 22 4 D 19 12 25
We kunnen de functie collect() gebruiken om de waarden uit de kolommen 2, 3 en 4 als volgt te „verzamelen“ in twee nieuwe kolommen genaamd „jaar“ en „punten“:
library (tidyr) #gather data from columns 2, 3, and 4 gather(df, key=" year ", value=" points ", 2:4) player year points 1 A year1 12 2 B year1 15 3 C year1 19 4 D year1 19 5 A year2 22 6 B year2 29 7 C year2 18 8 D year2 12 9 A year3 17 10 B year3 17 11 C year3 22 12 D year3 25
Aanvullende bronnen
Het doel van het Tidyr- pakket is om “opgeruimde” data te creëren, die de volgende kenmerken heeft:
- Elke kolom is een variabele.
- Elke lijn is een observatie.
- Elke cel is een unieke waarde.
Het Tidyr-pakket gebruikt vier hoofdfuncties om geordende gegevens te creëren:
1. De spread() -functie.
2. De functie verzamelen() .
3. De functie afzonderlijke() .
4. De unit() -functie.
Als u deze vier functies onder de knie heeft, kunt u uit elk dataframe ‘nette’ data creëren.