Como usar a função split() em r para dividir dados


A função split() em R pode ser usada para dividir dados em grupos com base nos níveis dos fatores.

Esta função usa a seguinte sintaxe básica:

dividir(x,f,…)

Ouro:

  • x : Nome do vetor ou bloco de dados a ser dividido em grupos
  • f : Um fator que define os agrupamentos

Os exemplos a seguir mostram como usar esta função para dividir vetores e quadros de dados em grupos.

Exemplo 1: Use split() para dividir o vetor em grupos

O código a seguir mostra como dividir um vetor de valores de dados em grupos com base em um vetor de níveis de fator:

 #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

O resultado são três grupos.

Observe que você também pode usar a indexação para recuperar grupos específicos:

 #split vector of data values into groups and only display second group
split(x = data, f = groups)[2]

$B
[1] 2 3 4

Exemplo 2: Use split() para dividir o quadro de dados em grupos

Suponha que temos o seguinte quadro de dados em R:

 #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

Podemos usar o seguinte código para dividir o quadro de dados em grupos com base na variável “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

O resultado são dois grupos. A primeira contém apenas linhas onde “equipe” é igual a A e a segunda contém apenas linhas onde “equipe” é igual a B.

Observe que também podemos dividir os dados em grupos usando variáveis de múltiplos fatores. Por exemplo, o código a seguir mostra como dividir os dados em grupos com base nas variáveis “equipe” e “posição”:

 #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

O resultado são quatro grupos.

Recursos adicionais

Os tutoriais a seguir explicam como usar outras funções comuns em R:

Como usar a função summary() em R
Como usar a função replicate() em R
Como usar a função match() em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *