在R中将单列写入.csv

时间:2018-04-06 22:09:57

标签: r csv

HI伙计们:我正在尝试将长度为100的向量写入R中的单列.csv。每次尝试时,我都会在csv文件中找到两列:首先是向量中的索引号,第二个是我的矢量内容。例如:

MyPath<-("~/rstudioshared/Data/HW3")
Files<-dir(MyPath)
write.csv(Files,"Names.csv",row.names = FALSE)

如果我将矢量转换为数据帧然后检查其尺寸,

Files<-data.frame(Files)
dim(Files)

我得到100行1列,该列包含目录文件夹中文件的名称。这就是我想要的。

然后我写了csv。当我在R外面打开它或者读回来查看它时,我得到一个100 X 2 DF,其中第一列包含索引号,第二列包含我的文件名。

  1. 为什么会这样?
  2. 如何只将单列数据写入.csv?
  3. 谢谢!

1 个答案:

答案 0 :(得分:0)

默认情况下,行名称由write.csv()写入(默认情况下,n行的数据框将具有行名1,...,n)。您可以通过查看例如:

来看到这一点
dat <- data.frame(mevar=rnorm(10))

# then compare what gets written by:
write.csv(dat, "outname1.csv")

# versus: 
rownames(dat) <- letters[1:10]
write.csv(dat, "outname2.csv")

只需使用write.csv(dat, "outname.csv", row.names=FALSE)即可显示行名称。

并提出建议:只需将矢量直接写入带有writeLines(your_vector, "your_outfile.txt")的文本文件,就可以更容易/更清晰(如果您更喜欢使用它,您仍然可以使用read.csv()将其读回: p)的