r - R 中类似 Python 的数值解包

标签 r iterable-unpacking

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





Assign multiple new variables on LHS in a single line

(14 个回答)



Can I assign variables in batch? [duplicate]

(2 个回答)


8年前关闭。




在 Python 中,可以这样做:

>>> a, b, c = (1, 2, 3)
>>> a
1
>>> b
2
>>> c
3

有没有办法在 R 中做到这一点,如下所示?
> a, b, c = c(1, 2, 3)

最佳答案

您可以使用 [<- 在列表中执行此操作

e <- list()

e[c('a','b','c')] <- list(1,2,3)

或者在 data.table 中使用 :=
library(data.table)
DT <- data.table()
DT[, c('a','b','c') := list(1,2,3)]

有了这两个(列表),你就可以使用 list2env复制到全局(或其他)环境
list2env(e, envir = parent.frame())

a
## 1
b
## 2
c
## 3

但不是在一般情况下在环境中创建对象。

关于r - R 中类似 Python 的数值解包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15170394/

相关文章:

r - 从R中的内核密度估计获取值

R:将嵌套列表转换为数据框并获取列表级别和因子的名称

r - 在使用 geom_abline 创建的线之间绘制带状图

python - 在转换时将元组扩展为参数?

python - 从 Python 3 中的可迭代对象生成值元组

r - install_bitbucket 失败并出现 404 错误

sorting - 字符串排序时不要忽略大小写

python - 当需要其他变量时如何解包元组?

python - 关于 Python 元组解包的说明

python - 元组、列表和集合定义中的星号,字典定义中的双星号