web-dev-qa-db-ja.com

「列名よりも列が多い」というエラーはどういう意味ですか?

IRSから.csvファイルを読み取ろうとしていますが、奇妙な方法でフォーマットされているようには見えません。

read.table()関数を使用しています。これは過去に何度か使用しましたが、今回は機能していません。代わりに、私はこのエラーを受け取ります:

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

なぜこれを行うのですか?

参考のため、.csvファイルは次の場所にあります。

http://www.irs.gov/uac/SOI-Tax-Stats-County-to-County-Migration-Data-Files

(必要なものは、郡から郡への移行.csvセクション-流入または流出のいずれかです。)

15
user3084629

区切り文字としてコンマを使用します。したがって、sep=","または単にread.csv

x <- read.csv(file="http://www.irs.gov/file_source/pub/irs-soi/countyinflow1011.csv")
dim(x)
## [1] 113593      9

このエラーは、一部の値のスペースと一致しない引用符が原因です。ヘッダーにはスペースがないため、read.tableは、1つの列があると考えています。次に、いくつかの行に複数の列があると考えます。たとえば、最初の2行(ヘッダーと最初の行):

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

一致しない引用符、たとえば1336行(行1335)で、read.tableにデフォルトのquote引数を指定(ただし、read.csv):

01,089,24,033,MD,Prince George's County,13,30,1040
19

ドイツ人向け:

csv-fileで10進数のコンマをフルストップに変更する必要があります(Excel:File-> Options-> Advanced-> "Decimal seperator")。その後、エラーが解決します。

3
Juschu

見出しに奇妙な文字があります#%-または、

2
em_likefrom007