row.names
参数的描述read.csv.sql
简单地说“与'read.csv'一样”
但是,当我尝试读取一个简单的 csv 文件时,将第一列作为行名,其中的行为read.csv.sql
不是我所期望的。
d <- data.frame("a"=c(1:10), "b"=c(15:24), "c"=c(21:30), row.names=paste("r", c(1:10), sep=""))
write.csv(d,"foo.txt", quote=T)
head(read.csv("foo.txt", row.names=1), 3)
a b c
r1 1 15 21
r2 2 16 22
r3 3 17 23
read.csv
给出了我可能希望的。但是,当我尝试read.csv.sql
时:
head(read.csv.sql("foo.txt", row.names=1), 3)
Error in try({ :
RS-DBI driver: (RS_sqlite_import: ./foo.txt line 2 expected 5 columns of data but found 4)
Error in sqliteExecStatement(con, statement, bind.data) :
RS-DBI driver: (error in statement: no such table: file)
我尝试过不同的小事情,例如是否在原始 csv 文件中包含引号,或者read.csv.sql
仅header=T
作为参数调用,并且充其量我可以将行名作为最终数据框的第一列,其中当然需要进一步修改以将第一列作为行名并删除第一列,或者拥有一个简单的数据框,其中行名只是数字并且所需的行名完全丢失。
在我对函数的调用或文件格式中是否缺少一些东西,以便在read.csv.sql
不进一步处理数据框的情况下,在第 1 列中读取的大型数据集作为行名更快地读取?