为什么不将csv写出为(4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4)(在记事本中查看)
results <- data.frame(Answer= rep(4,16))
write.table(results$Answer, file = "paul.csv", row.names=FALSE, col.names=FALSE, sep=",")好像它忽略了九月的论点..?保罗
发布于 2017-10-09 10:51:25
如果希望sep工作,则不应将变量定义为一个列,因为sep = ...与列一起工作。这是一种你可以做到的方法:
results <- data.frame(t(rep(4,16)))
write.table(results, file = "paul.csv", row.names=FALSE, col.names=FALSE, sep=",")发布于 2017-10-09 11:01:35
有两种简单的可能性。
第一,使用论点eol = ",",就像我在上面的评论中所说的那样。这种方法的问题是,它将在行尾包含一个额外的",",因为write.table总是包含一个结束换行符。
write.table(results$Answer, file = "paul.csv", row.names = FALSE, col.names = FALSE, eol = ",")另一种方法是使用cat。
cat(results$Answer, file = "paul.csv", sep = ",")我相信这是你想要的。
发布于 2017-10-09 10:50:48
您已经指定了垂直向量。当一个垂直向量被写入时,每个向量元素被写入到自己的行中:
> results <- data.frame(Answer= rep(4,16))
> dim(results)
[1] 16 1
> results
Answer
1 4
2 4
3 4
4 4
5 4
6 4
7 4
8 4
9 4
10 4
11 4
12 4
13 4
14 4
15 4
16 4如果要将向量写入一行,则可以使用函数t( )将垂直向量转换为水平向量。
> results <- t(data.frame(Answer= rep(4,16)))
> dim(results)
[1] 1 16
> results
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14] [,15] [,16]
Answer 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4然后将数据写入文件:
> results <- t(data.frame(Answer= rep(4,16)))
> write.table(results$Answer, file = "paul.csv", row.names=FALSE, col.names=FALSE, sep=",")将产生以下内容:
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4https://stackoverflow.com/questions/46644450
复制相似问题