将文本保存到多个文件中
Posted
技术标签:
【中文标题】将文本保存到多个文件中【英文标题】:Saving text into multiple files 【发布时间】:2011-03-15 06:25:09 【问题描述】:如何使用以下文件名在每个循环中保存输出数据:“file01.txt”、“file02.txt”、.. ? 这是我的 R 代码示例:
data <- matrix(c(59, 50, 48, 62, 44, 34, 78, 59, 42, 67, 51, 45, 72, 64, 52),
byrow=TRUE, ncol=3)
u <- c(33, 46, 53)
for (i in 1:length(u))
data[data<u[i]] <- NA
data <- data
print(data)
[,1] [,2] [,3]
[1,] 59 50 48
[2,] 62 44 34
[3,] 78 59 42
[4,] 67 51 45
[5,] 72 64 52
[,1] [,2] [,3]
[1,] 59 50 48
[2,] 62 NA NA
[3,] 78 59 NA
[4,] 67 51 NA
[5,] 72 64 52
[,1] [,2] [,3]
[1,] 59 NA NA
[2,] 62 NA NA
[3,] 78 59 NA
[4,] 67 NA NA
[5,] 72 64 NA
【问题讨论】:
你最好养成使用 seq() 与冒号运算符的习惯。例如。 seq(length(u)) 而不是 1:length(u)。要了解原因,请将 u 的长度设置为 0 并查看每个行为的方式。例如。 u 【参考方案1】:创建一个包含文件名的字符变量,并使用write.table()
。
for(i in 1:length(u))
...
filename = paste("file", i, ".txt", sep="")
write.table(data, filename)
【讨论】:
好答案。如果你使用:filename = paste("file", sprintf("%02d", i), ".txt", sep=""),那么你会得到 "file01", "file02"... 而不是 "文件 1”、“文件 2”。以上是关于将文本保存到多个文件中的主要内容,如果未能解决你的问题,请参考以下文章