Row sums निकालना
दूसरा पहचाना गया bottleneck row sums निकालना था.
total <- apply(d, 1, sum)
पिछले अभ्यास में आपने underlying object को एक matrix में बदला था. इससे ऊपर दिया गया apply ऑपरेशन लगभग तीन गुना तेज़ हो गया.
लेकिन आप एक और ऑप्टिमाइजेशन कर सकते हैं — apply() को rowSums() से बदलें.
यह अभ्यास पाठ्यक्रम का हिस्सा है
कार्यकुशल R कोड लिखना
अभ्यास निर्देश
rowSums()का उपयोग करकेr_sum()फंक्शन पूरा करें.microbenchmark()फंक्शन का उपयोग करकेapp()औरr_sum()के timings की तुलना करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Example data
rolls
# Define the previous solution
app <- function(x) {
apply(x, 1, sum)
}
# Define the new solution
r_sum <- function(x) {
___(x)
}
# Compare the methods
microbenchmark(
app_sol = app(rolls),
r_sum_sol = ___
)