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

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert