Comment réparer dans R : dupliquer ‘row.names’ ne sont pas permis
Une erreur que vous pouvez rencontrer dans R est :
Error in read.table(file = file, header = header, sep = sep, quote = quote, : duplicate 'row.names' are not allowed
Cette erreur se produit généralement lorsque vous tentez de lire dans R un fichier CSV contenant des virgules à la fin de chaque ligne du fichier , à l’exception de la ligne d’en-tête.
Ce didacticiel explique exactement comment corriger cette erreur.
Comment reproduire l’erreur
Supposons que nous ayons le fichier CSV suivant appelé my_data.csv :
Notez qu’il y a des virgules à la fin de chaque ligne du fichier , à l’exception de la ligne d’en-tête.
Supposons maintenant que nous essayions d’importer ce fichier dans R :
#attempt to import CSV into data frame
df <- read.csv('my_data.csv')
Error in read.table(file = file, header = header, sep = sep, quote = quote, :
duplicate 'row.names' are not allowed
Nous recevons une erreur car il y a des virgules à la fin de chaque ligne du fichier, à l’exception de la ligne d’en-tête, ce qui amène R à penser que la première colonne de valeurs correspond aux noms de lignes.
Puisque deux des lignes ont la même valeur de départ (4), R pense qu’il existe des noms de lignes en double.
Comment réparer l’erreur
La façon de corriger cette erreur consiste simplement à utiliser row.names=NULL lors de l’importation du fichier :
#import CSV file into data frame
df <- read.csv('my_data.csv', row.names=NULL)
#view data frame
df
row.names column1 column2 column3
1 4 5 7 NA
2 4 2 1 NA
3 7 9 0 NA
Nous parvenons à importer avec succès le fichier CSV, mais les noms de colonnes sont erronés.
Pour résoudre ce problème, nous pouvons modifier les noms des colonnes puis supprimer la dernière colonne :
#modify column names
colnames(df) <- colnames(df)[2:ncol(df)]
#drop last column
df <- df[1:(ncol(df)-1)]
#view updated data frame
df
column1 column2 column3
1 4 5 7
2 4 2 1
3 7 9 0
Le bloc de données est maintenant au format correct.
Connexe : Comment utiliser la fonction ncol dans R
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