R中write.table的文件名中的变量

时间:2011-07-21 08:39:37

标签: r

请帮我解决一些天真的问题(已经谷歌搜索,并尝试了很多变化,但失败了):如何用R中的write.table文件名中的变量保存文件?脚本循环遍历dir中的文件,应用一些函数,然后将结果保存到具有相同名称但附加结尾的文件中。感谢的!

for (x in list.files(pattern="SIM")) {
                      u <- read.table(x, header = T, row.names = 1, sep = " ")
                      ut <- t(u)
                      utm <- colMeans(ut)
                      utms <- sort(utm, decreasing = T)
                      write.table(utms, "$x.mean")
                      }

3 个答案:

答案 0 :(得分:14)

您可以使用paste执行此操作。

尝试以下方法:

write.table(utms, file=paste(x, ".mean", sep=""))

paste连接字符向量。有关详细信息,请参阅?paste

答案 1 :(得分:9)

sprintf函数也可以用于这种类型的东西,语法略有不同:

write.table(utms, file=sprintf("%s.mean",x))

答案 2 :(得分:0)

您还可以将以下内容用于数据框:

now<-format(Sys.time(), "%d-%m-%Y")
csvFileName <- paste("Your_df_",now,".csv",sep="")
write.csv(WKSH_Check, file=csvFileName)