j'ai un fichier .csv qui contient une telle situation (espaces supplémentaires ajoutés pour faciliter la lecture):R read.table virgule à l'intérieur échappé citations à l'intérieur chaîne
1, 3 , "string" , "string4" , NA
2, 5 , "string" , "s\"tring\"4" , 3
1, 3 , "string" , "stri,ng4" , 5
8, 7 , "string" , "st\"ri,n\"g4" , 5
Je lis cela en rstudio sur un ordinateur Windows 10 la machine, en utilisant la déclaration suivante:
read.table("file_name.csv",fill=TRUE, header=FALSE, quote="\"", sep=",", encoding="UTF-8")
la réponse suivante:
V1 V2 V3 V4 V5 V6
1 1 3 string string4 <NA> NA
2 2 5 string s\\tring\\4 3 NA
3 1 3 string stri,ng4 5 NA
4 8 7 string st\\ri n\\g4 5
Le problème semble être que la virgule dans les guillemets échappés dans la rangée 5, il est interprété comme un séparateur.
Je m'attends/cherche quelque chose comme suivre, mais je ne suis pas sûr de savoir comment l'obtenir.
V1 V2 V3 V4 V5
1 1 3 string string4 <NA>
2 2 5 string s\"tring\"4 3
3 1 3 string stri,ng4 5
4 8 7 string st\"ri,n\"g4 5
Je considère le retraitement du fichier en utilisant grep changer \ » pour », mais je suis curieux de savoir s'il y a une méthode plus directe. Il semble comme une question potentiellement commune, mais je ne peux pas trouver un bon . par exemple une solution
pensées, tout le monde
sortie désirée trouvé ce fil:.. [link] (http://stackoverflow.com/questions/32103639/read-csv-file-in-r-with-double-quotes) La suggestion de 'fread' de' data.library' a fait l'affaire. –
Cool! Juste pour des raisons d'information, fread est de data.table, pas data.library –