【问题标题】:How to create variable names & assign values dynamically in R?如何在 R 中动态创建变量名和赋值?
【发布时间】:2020-05-26 20:04:28
【问题描述】:

假设我有以下向量。

library(stringr)
aa <- c("A","B","C","D")

我想创建变量名称并将aa 的每个元素分配为动态新创建变量的值。那就是:

mm1  mm2  mm3  mm4
"A"  "B"  "C"  "D"

其中mm1、mm2、mm3 和mm4 是动态创建的变量名。任何帮助,请!

【问题讨论】:

    标签: r text stringr


    【解决方案1】:

    将vector 转换为named list,然后使用list2env 从list 的名称中创建对象(在全局环境中创建多个对象 - 不推荐)

    list2env(setNames(as.list(aa), paste0("mm", seq_along(aa))), .GlobalEnv)
    
    mm1
    #[1] "A"
    mm2
    #[1] "B"
    mm3
    #[1] "C"
    mm4
    #[1] "D"
    

    【讨论】:

    • 谢谢!但我上面指定的格式对我来说很重要。
    • @Gadaa 你不是在全球环境中创建新的对象(来自你的帖子)
    • @Gadaa 如果要创建命名向量,请执行setNames(aa, paste0("mm", seq_along(aa)))
    猜你喜欢
    • 2023-03-21
    • 2014-09-02
    • 1970-01-01
    • 1970-01-01
    • 2021-11-10
    • 2015-02-15
    • 2019-07-25
    • 2018-07-29
    • 2011-12-05
    相关资源
    最近更新 更多