आर

2013-03-02 6 views
7

में संख्यात्मक मान पायथन में अजगर की तरह unpacking, एक ऐसा कर सकते हैं:आर

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

वहाँ आर में यह करने के लिए एक तरह से नीचे के रूप में है?

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

कोई वहाँ नहीं है। –

उत्तर

11

आप का उपयोग [<-

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 

लेकिन सामान्य उपयोग में पर्यावरण में वस्तुओं को बनाने में नहीं।

+0

अच्छा ... 'list2env' से अवगत नहीं था - हालांकि मैं इसे इस्तेमाल किए जाने के बजाय दुर्व्यवहार कर सकता हूं। – thelatemail

+0

असल में, मैं 'list2env()' का उपयोग नहीं करूंगा - यह आर में बल्कि हैकिश और अप्राकृतिक लगता है - लेकिन उत्तर निर्देशक और व्यापक है। साथ ही, मैंने सूचियों का उपयोग कैसे किया है! धन्यवाद! – brandizzi

3

शायद यह बेवकूफ लग रहा है, लेकिन मैं यह करना होगा:

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

$b 
[1] 2 

$c 
[1] 3