我被难住了。通常来说,read.csv
函数按预期工作,但是我遇到了一个行为不符合预期的问题。很可能是我的使用方法有误,但任何帮助都将不胜感激。
以下是文件的 URL:
http://nces.ed.gov/ipeds/datacenter/data/SFA0910.zip
这是我的代码,用于获取文件、解压缩并读取它:
URL <- "http://nces.ed.gov/ipeds/datacenter/data/SFA0910.zip"
download.file(URL, destfile="temp.zip")
unzip("temp.zip")
tmp <- read.table("sfa0910.csv",
header=T, stringsAsFactors=F, sep=",", row.names=NULL)
这是我的问题。当我在Excel中打开csv数据时,数据看起来符合预期。但是当我将数据读入R中时,第一列实际上被命名为row.names。R会读入一行额外的数据,但是我无法确定“错误”发生的位置,导致row.names成为了一列。简单地说,数据似乎移位了。
然而,奇怪的是,在R中的最后一列似乎包含了正确的数据。
这里是前几列的几行数据:
tmp[1:5,1:7]
row.names UNITID XSCUGRAD SCUGRAD XSCUGFFN SCUGFFN XSCUGFFP
1 100654 R 4496 R 1044 R 23
2 100663 R 10646 R 1496 R 14
3 100690 R 380 R 5 R 1
4 100706 R 6119 R 774 R 13
5 100724 R 4638 R 1209 R 26
您认为我可能做错了什么吗?
row.names = NULL
参数。 - mneldim(read.csv("sfa0910.csv", header = F, skip = 1))
为6852 452
而length(unlist(strsplit(readLines('sfa0910.csv',1), ',')))
为451
。 - mnel