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を行名として読み取る大規模なデータセットではるかに高速になるように、関数またはファイル形式の呼び出しに欠けているものはありますか?