R-创建一个创建变量名称的函数

时间:2017-12-14 20:14:51

标签: r function variables

我想创建一个根据其参数创建名称的函数。 我试过了:

a <- function(x){ assign(paste("train",x,sep=""),4]) } 

但是当我做a(3)时,没有任何反应。什么错了?

感谢您的帮助。

编辑:我会根据要求更具体。

我想做一个特征选择:想法是使用一个函数来生成不同的特征子集,为每个子集生成一个训练集,然后在另一个函数中使用该函数的输出(让我们说lm())测试每个训练集。子集/训练集的数量是可变的,我不知道如何存储它们以便以后重新使用它们。

1 个答案:

答案 0 :(得分:-1)

您需要在全局环境中(或您希望变量居住的环境)分配变量。

> a <- function(x) { assign(paste('train', x, sep = ''), 4, envir = .GlobalEnv) }
> ls()
[1] "a"
> a(1)
> ls()
[1] "a"      "train1"