वेक्टर को सूची में, तत्व के प्रत्येक तत्व को सूची में परिवर्तित करें


92

वेक्टर इस तरह है:

c(1,2,3)
#[1] 1 2 3

मुझे कुछ ऐसा ही चाहिए:

list(1,2,3)
#[[1]]
#[1] 1
#
#[[2]]
#[1] 2
#
#[[3]]
#[1] 3

मैंने यह कोशिश की:

list(c(1,2,3))
#[[1]]
#[1] 1 2 3

जवाबों:


126

सरल, बस यह करें:

as.list(c(1,2,3))

FYI करें: ऐसा लगता है कि NULL के मूल्यों को अनदेखा कर रहा है as.list(c(0, NULL,1))
ओलेग

1
@OlegMelnikov आप NULLएक सदिश में नहीं c()जा सकते हैं, NAयदि आप जो खोज रहे हैं वह पास हो सकता है ।
मैट डब्ल्यू।

4

स्वीकृत उत्तर के अतिरिक्त: यदि आप लंबी सूची में अन्य तत्वों के लिए एक वेक्टर जोड़ना चाहते हैं, तो as.list () उस चीज का उत्पादन नहीं कर सकता है जो उससे अपेक्षा करता है। उदाहरण के लिए: आप 7 तत्वों की एक सूची बनाने के लिए 2 पाठ तत्वों और पांच संख्यात्मक तत्वों (1: 5) के वेक्टर को जोड़ना चाहते हैं।

L<-list("a","b",as.list(1:5)) 

उफ़: यह 3 तत्वों के साथ एक सूची देता है, और तीसरे तत्व में 5 तत्वों की उप-सूची होती है; वह नहीं जो हम चाहते थे! इसका समाधान दो अलग-अलग सूचियों में शामिल होना है:

L1<-list("a","b")
L2<-as.list(1:5)
L<-c(L1,L2) #7 elements, as expected
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.