首页 文章

如何在R中的数据框名称中包含变量? [重复]

提问于
浏览
0

这个问题在这里已有答案:

我对以下内容感兴趣:

for (i in 1:10) {
    df[i]<-function(x,y,i)
}

我希望输出是10个不同的数据帧,名称为df1,df2,df3等 .

我知道您可以使用以下内容在数据框列名中包含变量:

for (i in 1:10) {
    df[,paste0(i)]<-function(x,y,i)
}

但我想要10个独立的数据帧,而不是1个数据帧和10个适当命名的列 .

1 回答

  • 0

    你可以使用assign . 在这里,我创建了10个名为 df1df2 等的向量,并从函数(例如, sqrt )中为它们分配值 .

    for (i in 1:10) {
      assign(paste("df", i, sep = ""), sqrt(i))
    }
    

    Edit

    如果要使用具有动态名称的列创建数据框,可以使用以下命令:

    for (i in 1:10) {
      assign(paste("df", i, sep = ""), setNames(data.frame(1:5), LETTERS[i]))
    }
    

    在这里,我使用 LETTERS 来命名我的列,但你可以使用你喜欢的任何东西 .

相关问题