使用write.csv时防止将行名称写入文件
命令:使用write.csv时防止将行名称写入文件,r,csv,R,Csv,命令: t <- data.frame(v = 5:1, v2 = 9:5) write.csv(t, "t.csv") 如何防止将具有行索引的第一列写入文件 write.csv(t, "t.csv", row.names=FALSE) 从?write.csv: row.names: either a logical value indicating whether the row names of ‘x’ are to be written along with
t <- data.frame(v = 5:1, v2 = 9:5)
write.csv(t, "t.csv")
如何防止将具有行索引的第一列写入文件
write.csv(t, "t.csv", row.names=FALSE)
从?write.csv
:
row.names: either a logical value indicating whether the row names of
‘x’ are to be written along with ‘x’, or a character vector
of row names to be written.
为完整起见,包中的
write_csv()
更快,而且从不写入行名称
# install.packages('readr', dependencies = TRUE)
library(readr)
write_csv(t, "t.csv")
如果需要写出大数据,请使用软件包中的fwrite()
。它比write.csv
和write\u csv
# install.packages('data.table')
library(data.table)
fwrite(t, "t.csv")
下面是爱德华在他的网站上发表的一篇文章
microbenchmark(write.csv(data, "baseR_file.csv", row.names = F),
write_csv(data, "readr_file.csv"),
fwrite(data, "datatable_file.csv"),
times = 10, unit = "s")
## Unit: seconds
## expr min lq mean median uq max neval
## write.csv(data, "baseR_file.csv", row.names = F) 13.8066424 13.8248250 13.9118324 13.8776993 13.9269675 14.3241311 10
## write_csv(data, "readr_file.csv") 3.6742610 3.7999409 3.8572456 3.8690681 3.8991995 4.0637453 10
## fwrite(data, "datatable_file.csv") 0.3976728 0.4014872 0.4097876 0.4061506 0.4159007 0.4355469 10
我很惭愧,因为我确实尝试过?write.csv但是。。。Thx aix!是的,诀窍是要理解这个列代表行名。也许应该重命名它。
microbenchmark(write.csv(data, "baseR_file.csv", row.names = F),
write_csv(data, "readr_file.csv"),
fwrite(data, "datatable_file.csv"),
times = 10, unit = "s")
## Unit: seconds
## expr min lq mean median uq max neval
## write.csv(data, "baseR_file.csv", row.names = F) 13.8066424 13.8248250 13.9118324 13.8776993 13.9269675 14.3241311 10
## write_csv(data, "readr_file.csv") 3.6742610 3.7999409 3.8572456 3.8690681 3.8991995 4.0637453 10
## fwrite(data, "datatable_file.csv") 0.3976728 0.4014872 0.4097876 0.4061506 0.4159007 0.4355469 10