foreach के साथ लूपिंग
US Department of Health को प्रसव के दौरान प्रतिकूल परिणामों की उच्च दर की रिपोर्ट मिली है। आप जाँचना चाहते हैं कि क्या यह रुझान मातृ आयु के बहुत कम या बहुत अधिक होने के कारण है। आपकी टीम ने पिछले वर्ष का births डेटासेट जुटाया है। आपके पास एक लिस्ट ls_age है। इस लिस्ट का हर एलिमेंट किसी US राज्य में दर्ज हर जन्म के लिए माँ की आयु का एक वेक्टर है.
नीचे दिया गया लूप उस राज्य में उन जन्मों का प्रतिशत निकालता है जहाँ मातृ आयु 20 से कम या 35 से अधिक है:
at_risk_perc <- rep(NA, length(ls_age))
for (m in 1:length(ls_age)) {
at_risk_perc[m] <-
sum(ls_age[[m]] > 35 | ls_age[[m]] < 20) * 100/length(ls_age[[m]])
}
लेकिन यह बहुत समय ले रहा है, और आप अन्य विकल्पों को आज़माना चाहते हैं। foreach, parallel, और doParallel आपके लिए लोड कर दिए गए हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
R में पैरेलल प्रोग्रामिंग
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Specify input to loop over
at_risk_perc <- foreach(m = ___
# Specify the sequential operator
) ___ {
sum(m > 35 | m < 20) * 100/length(m)}