2011-11-11 7 views
20

के बराबर होती है मैं के बारे में त्वरित सवाल है अनुक्रम और each:प्रतिनिधि() प्रत्येक के साथ एक वेक्टर

vect1 <- c(4, 5, 10, 3, 1) 

मैं हर तरह के रूप में इस सदिश कि पहले नंबर दोहराया जाता है 4 के साथ दोहराने चाहते हैं, दूसरा 5, तीसरा 10, चौथा 3, और पांचवां बराबर 1.

rep(1:5, each = vect1) 
[1] 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 
Warning message: 
In rep(1:5, each = vect1) : first element used of 'each' argument 

rep(1:5, each = c(4, 5, 10, 3, 1)) 

    [1] 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 
    Warning message: 
    In rep(1:5, each = c(4, 5, 10, 3, 1)) : 
     first element used of 'each' argument 

मुझे पता है कि यह प्रत्येक का दुरुपयोग है।

+2

'प्रतिनिधि (vect1, vect1)' यह एक अच्छा प्राप्त होती है। –

उत्तर

17
rep(1:5, vect1) 

आप कैसे आर में कार्यों काम करने के बारे में प्रश्न हैं, तो कोशिश

?function 

जहां "समारोह" आप के बारे में जानना चाहते हैं जो कुछ भी कार्य है। ?rep से आप पढ़ लिया है जाएगा:

'बार' ए पूर्णांक वेक्टर (गैर नकारात्मक) समय की संख्या देने लंबाई लंबाई (एक्स) की यदि प्रत्येक तत्व दोहराने के लिए, या यदि पूरे वेक्टर दोहराने के लिए लंबाई 1. नकारात्मक या एनए मान एक त्रुटि है।

+0

धन्यवाद आरजीयू मदद के लिए, मैं आर भाषा और प्रोग्रामिंग को समझने के पीछे बहुत कम हूं ... अक्सर साधारण समस्याओं में पकड़ा जाता है ... – jon

-3

vect1 < - सी (4, 5, 10, 3, 1) प्रतिनिधि (vect1, vect1)

+1

इस प्रश्न का उत्तर पहले ही दिया जा चुका है। यह बस आरजीयू ने जो कहा है उसे दोहराना है, लेकिन आपने बस 'रेप' में एक अलग वेक्टर का उपयोग किया है। आपके मामले में, यह फिर से 'vect1' है। – rayryeng

+0

पुनरावृत्ति रे नहीं, मैंने प्रतिनिधि (vect1, vect1) जोड़ा जो रिचर्ड ने टिप्पणी की, जिस पर रिचर्ड ने टिप्पणी की, कृपया – minhaj

+2

देखें कि मैं यह नहीं देखता कि यह Rguy के उत्तर से अलग कैसे है ... और तथ्य यह है कि यह आपको लगभग ले गया जवाब देने के लिए 2 साल मुझे बताता है कि आप वास्तव में परवाह नहीं करते हैं। – rayryeng