13

Pythonでは、次のことができます。

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

以下のように、Rでそれを行う方法はありますか?

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

2 に答える 2

19

これは、リスト内で次を使用して行うことができます[<-

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

ただし、環境内でオブジェクトを作成する一般的な使用法ではありません。

于 2013-03-02T03:44:41.130 に答える
4

多分それは愚かに見えるが、私はこれをするだろう:

v <- list(a=0,b=0,c=0)
v[] <- c(1,2,3)
 v
$a
[1] 1

$b
[1] 2

$c
[1] 3
于 2013-03-02T03:54:10.967 に答える