शुरू करेंमुफ़्त में शुरू करें

Timings - pre-allocation

पिछले अभ्यास में, वेक्टर को बढ़ाते समय लगभग 2 सेकंड लगे थे. जब हम वेक्टर को पहले से allocate कर देते हैं, तब कितना समय लगता है? नीचे pre_allocate() फंक्शन दिया गया है.

n <- 30000
# Fast code
pre_allocate <- function(n) {
    x <- numeric(n) # Pre-allocate
    for(i in 1:n) 
        x[i] <- rnorm(1)
    x
}

यह अभ्यास पाठ्यक्रम का हिस्सा है

कार्यकुशल R कोड लिखना

पाठ्यक्रम देखें

अभ्यास निर्देश

pre_allocate() फंक्शन आपके workspace में उपलब्ध है.

  • system.time() का उपयोग करके पता लगाइए कि pre_allocate(n) चलने में कितना समय लगता है. परिणाम को ऑब्जेक्ट res_allocate में स्टोर करने के लिए <- ट्रिक का इस्तेमाल करें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Use <- with system.time() to store the result as res_allocate
n <- 30000
system.time(___ <- ___)
कोड संपादित करें और चलाएँ