Que signifie l'erreur "plus de colonnes que de noms de colonnes"?
je suis en train de lire dans un .fichier csv de L'IRS et il ne semble pas être formaté d'une manière étrange.
j'utilise le read.table()
fonction, que j'ai utilisé à plusieurs reprises dans le passé, mais il ne fonctionne pas cette fois; au lieu de cela, j'ai cette erreur:
data_0910<-read.table("/Users/blahblahblah/countyinflow0910.csv",header=T,stringsAsFactors=FALSE,colClasses="character")
Error in read.table("/Users/blahblahblah/countyinflow0910.csv", :
more columns than column names
Pourquoi fait-il cela?
Pour référence, le <!-Les fichiers peuvent être trouvés à:
http://www.irs.gov/uac/SOI-Tax-Stats-County-to-County-Migration-Data-Files
(ceux dont j'ai besoin sont de la migration de comté à Comté .section csv-entrée ou sortie.)
3 réponses
Il utilise des virgules comme séparateurs. Ainsi, vous pouvez définir sep=","
ou tout simplement utiliser read.csv
:
x <- read.csv(file="http://www.irs.gov/file_source/pub/irs-soi/countyinflow1011.csv")
dim(x)
## [1] 113593 9
L'erreur est causée par des espaces dans certaines valeurs, et une citations. Il n'y a pas d'Espaces Dans l'en-tête, donc read.table
pense qu'il y a une colonne. Puis il pense qu'il voit plusieurs colonnes dans certaines lignes. Par exemple, les deux premières lignes (en-tête et première ligne):
State_Code_Dest,County_Code_Dest,State_Code_Origin,County_Code_Origin,State_Abbrv,County_Name,Return_Num,Exmpt_Num,Aggr_AGI
00,000,96,000,US,Total Mig - US & For,6973489,12948316,303495582
et les guillemets non appariés, par exemple sur la ligne 1336 (ligne 1335) qui confondre read.table
par défaut quote
argument (mais pas read.csv
):
01,089,24,033,MD,Prince George's County,13,30,1040
Pour les Allemands:
vous devez changer vos virgule décimales en un point dans votre fichier csv (dans Excel: File - > Options - > Avancé - > "séparateur décimal"), alors l'erreur est résolue.
vous avez des caractères étranges dans votre rubrique # % -- ou ,