R:存储在变量中的对象的名称

时间:2015-07-12 08:47:03

标签: r

我在R中遇到这个小问题:我加载了一个数据集,修改了它并将其存储在变量“mean”中。然后我使用了另一个包含此数据集的变量“dataset”

data<-read.table() [...modification on data...] mean<-data dataset<-mean

我在我的脚本等的其他一些函数中使用了变量“dataset”,最后我想存储在名为"table_mean.csv"

的文件中

当然命令write.csv(tabCorr,file=paste("table_",dataset,".csv",sep="")) 也不是...,quote(dataset)...做我想要的人......

有谁知道如何从“数据集”中检索“mean”(作为字符串)?

(目的是我可以将此脚本用于其他目的,只需更改例如dataset<-variance

提前谢谢!

1 个答案:

答案 0 :(得分:0)

我认为您正在尝试执行类似以下代码的操作:

data1 <- 1:4
data2 <- 4:8

## Configuration ###

useThisDataSet <- "data2" # Change to "data1" to use other dataset.

currentDataSet <- get(x = useThisDataSet)

## Your data analysis.

result <- fivenum(currentDataSet)

## Save results.

write.csv(x = result, file = paste0("table_", useThisDataSet, ".csv"))

但是,更好的选择是将代码包装到函数中并传入数据:

doAnalysis <- function(data, name) {

  result <- fivenum(data)
  write.csv(x = result, file = paste0("table_", name, ".csv"))
}

doAnalysis(data1, "data1")

如果你总是想使用作为文件名一部分传递给函数的对象的名称,我们可以使用非标准的评估来保存一些输入:

doAnalysisShort <- function(data) {

  result <- fivenum(data)
  write.csv(x = result, file = paste0("table_", substitute(data), ".csv"))
}

doAnalysisShort(data1)