Comment réparer dans R : erreur dans Aggregate.data.frame() : les arguments doivent avoir la même longueur



Une erreur que vous pouvez rencontrer dans R est :

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

Cette erreur se produit lorsque vous tentez d’utiliser la fonction Aggregate() pour résumer les valeurs dans une ou plusieurs colonnes d’un bloc de données dans R mais que vous ne parvenez pas à spécifier le nom du bloc de données lors du référencement des colonnes.

Ce didacticiel explique exactement comment corriger cette erreur.

Comment reproduire l’erreur

Supposons que nous ayons le bloc de données suivant dans 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     A      5
2     A      9
3     A     12
4     A     14
5     A     14
6     B     13
7     B     10
8     B      6
9     C     15
10    C     18

Supposons maintenant que nous essayions d’utiliser la fonction Aggregate() pour calculer la valeur moyenne des points , regroupés par équipe :

#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

Nous recevons une erreur car nous n’avons pas réussi à spécifier le nom du bloc de données dans l’argument list() .

Comment réparer l’erreur

La façon de corriger cette erreur est d’utiliser simplement df$team au lieu de simplement « team » dans l’argument 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

Notez que nous ne recevons aucune erreur cette fois car nous avons spécifié le nom du bloc de données dans l’argument list() .

Notez que si vous utilisez plusieurs noms de colonnes dans l’argument list() , vous devrez alors spécifier le nom du bloc de données pour chaque nom de colonne, sinon vous recevrez une erreur.

Ressources additionnelles

Les didacticiels suivants expliquent comment résoudre d’autres erreurs courantes dans R :

Comment réparer dans R : les noms ne correspondent pas aux noms précédents
Comment réparer dans R : la longueur d’un objet plus longue n’est pas un multiple de la longueur d’un objet plus courte
Comment réparer dans R : les contrastes ne peuvent être appliqués qu’à des facteurs avec 2 niveaux ou plus

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *