【问题标题】:R assign along a vectorR沿向量分配
【发布时间】:2020-06-11 16:09:11
【问题描述】:

我有一个 ini 文件,由 R 读取为列表(在示例 l 中)。现在我想沿向量 (m) 添加更多子列表,并始终为它们分配相同的常数。到目前为止我的尝试:

l <- list("A")
m <- letters[1:5]
n <- 5

for (i in 1:5){
  assign(paste0("l$A$",m[i]), n)
}
# which does not work   


# example of the desired outcome:
> l$A$e
[1] 5

我认为我还没有完全理解列表的工作原理......

【问题讨论】:

  • 避免在 R:l$A &lt;- setNames(rep(list(n), length(m)), m) 中使用 assign。只需使用分配运算符 &lt;- 扩展列表元素。

标签: r list assign


【解决方案1】:

试试

L[["A"]][m] <- n

L$A$e
# [1] 5

数据:

L <- list(A = list())
m <- letters[1:5]
n <- 5

【讨论】:

  • 我几乎自己解决了这个问题,使用真实文件,它按照您提供的方式工作,但在示例中我没有 L
猜你喜欢
  • 1970-01-01
  • 2018-03-25
  • 1970-01-01
  • 2014-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-07
  • 1970-01-01
相关资源
最近更新 更多