Como corrigir em r: erro em aggregate.data.frame(): os argumentos devem ter o mesmo comprimento


Um erro que você pode encontrar no R é:

 Error in aggregate.data.frame(as.data.frame(x), ...): 
  arguments must have same length 

Este erro ocorre quando você tenta usar a função Aggregate() para resumir os valores em uma ou mais colunas de um quadro de dados em R, mas não consegue especificar o nome do quadro de dados ao fazer referência às colunas.

Este tutorial explica exatamente como corrigir esse erro.

Como reproduzir o erro

Suponha que temos o seguinte quadro de dados em R:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'C', 'C'),
                 points=c(5, 9, 12, 14, 14, 13, 10, 6, 15, 18))

#view data frame
df

   team points
1 to 5
2 to 9
3 to 12
4 to 14
5 to 14
6 B 13
7 B 10
8 B 6
9 C 15
10 C 18

Agora suponha que tentamos usar a função Aggregate() para calcular o valor médio dos pontos , agrupados por equipe :

 #attempt to calculate mean points value by team
aggregate(df$points, list(' team '), FUN=mean)

Error in aggregate.data.frame(as.data.frame(x), ...): 
  arguments must have same length

Recebemos um erro porque não especificamos o nome do bloco de dados no argumento list() .

Como corrigir o erro

A maneira de corrigir esse erro é simplesmente usar df$team em vez de apenas “team” no argumento list() :

 #calculate mean points value by team
aggregate(df$points, list(df$team), FUN=mean)

  Group.1 x
1 A 10.800000
2 B 9.666667
3 C 16.500000

Observe que desta vez não recebemos nenhum erro porque especificamos o nome do quadro de dados no argumento list() .

Observe que se você usar vários nomes de coluna no argumento list() , precisará especificar o nome do quadro de dados para cada nome de coluna, caso contrário receberá um erro.

Recursos adicionais

Os tutoriais a seguir explicam como resolver outros erros comuns em R:

Como corrigir em R: os nomes não correspondem aos nomes anteriores
Como corrigir em R: o comprimento de um objeto mais longo não é múltiplo do comprimento de um objeto mais curto
Como corrigir em R: contrastes só podem ser aplicados a fatores com 2 ou mais níveis

Add a Comment

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