Hoe de functie split() in r te gebruiken om gegevens te splitsen
De functie split() in R kan worden gebruikt om gegevens in groepen te splitsen op basis van factorniveaus.
Deze functie gebruikt de volgende basissyntaxis:
deel(x, f, …)
Goud:
- x : Naam van het vector- of datablok dat in groepen moet worden verdeeld
- f : Een factor die de groeperingen definieert
De volgende voorbeelden laten zien hoe u deze functie kunt gebruiken om vectoren en dataframes in groepen te verdelen.
Voorbeeld 1: Gebruik split() om de vector in groepen te splitsen
De volgende code laat zien hoe je een vector van gegevenswaarden in groepen verdeelt op basis van een vector van factorniveaus:
#create vector of data values data <- c(1, 2, 3, 4, 5, 6) #create vector of groupings groups <- c('A', 'B', 'B', 'B', 'C', 'C') #split vector of data values into groups split(x = data, f = groups) $A [1] 1 $B [1] 2 3 4 $C [1] 5 6
Het resultaat zijn drie groepen.
Merk op dat u indexering ook kunt gebruiken om specifieke groepen op te halen:
#split vector of data values into groups and only display second group
split(x = data, f = groups)[2]
$B
[1] 2 3 4
Voorbeeld 2: Gebruik split() om het dataframe in groepen te splitsen
Stel dat we het volgende dataframe in R hebben:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'), position=c('G', 'G', 'F', 'G', 'F', 'F'), points=c(33, 28, 31, 39, 34, 44), assists=c(30, 28, 24, 24, 28, 19)) #view data frame df team position points assists 1 GA 33 30 2 AG 28 28 3 AF 31 24 4 BG 39 24 5 BF 34 28 6 BF 44 19
We kunnen de volgende code gebruiken om het dataframe in groepen te verdelen op basis van de variabele ‘team’:
#split data frame into groups based on 'team'
split(df, f = df$team)
$A
team position points assists
1 GA 33 30
2 AG 28 28
3 AF 31 24
$B
team position points assists
4 BG 39 24
5 BF 34 28
6 BF 44 19
Het resultaat zijn twee groepen. De eerste bevat alleen regels waarin „team“ gelijk is aan A en de tweede bevat alleen regels waarin „team“ gelijk is aan B.
Merk op dat we de gegevens ook in groepen kunnen verdelen met behulp van meerdere factorvariabelen. De volgende code laat bijvoorbeeld zien hoe u gegevens in groepen kunt verdelen op basis van de variabelen ‚team‘ en ‚positie‘:
#split data frame into groups based on 'team' and 'position' variables
split(df, f = list(df$team, df$position))
$AF
team position points assists
3 AF 31 24
$BF
team position points assists
5 BF 34 28
6 BF 44 19
$AG
team position points assists
1 GA 33 30
2 AG 28 28
$BG
team position points assists
4 BG 39 24
Het resultaat zijn vier groepen.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende functies in R kunt gebruiken:
Hoe de summary()-functie in R te gebruiken
Hoe de functie repliceren() in R te gebruiken
Hoe de match()-functie in R te gebruiken