आर पाठ्यपुस्तक लूप के बजाय लापरवाही के उपयोग को बढ़ावा देना जारी रखती है। यहबदलते तर्कों के साथ लापरवाही का उपयोग
lapply(somelist, f, a=1, b=2)
पर तर्कों के साथ भी आसान है, लेकिन क्या सूची तत्व के आधार पर तर्क बदलते हैं? मान लें मेरी somelist के होते हैं:
somelist$USA
somelist$Europe
somelist$Switzerland
प्लस वहाँ एक ही क्षेत्रों के साथ anotherlist
है और मैं इन बदलते तर्क के साथ lapply का उपयोग करना चाहते हैं? यह उपयोगी हो सकता है जब एफ उदाहरण के लिए अनुपात गणना थी।
lapply(somelist, f, a= somelist$USA, b=anotherlist$USA)
क्या इन क्षेत्रों के माध्यम से प्रभावी ढंग से चलाने के लिए एक लूप को छोड़कर रास्ता है?
संपादित करें: मेरी समस्या है कि मैं अनुक्रमित बिना किसी पूर्व लिखित फ़ंक्शन का उपयोग करने की कोशिश की है ...
ratio <-function(a,b){
z<-(b-a)/a
return(z)
}
जो
lapply(data,ratio,names(data))
जो काम नहीं करता है का नेतृत्व किया। शायद अन्य इस गलती से भी सीख सकते हैं।
+1 मैं तुम्हें मेरे नाम विचार करने के लिए करने के लिए हरा देखना –
हाँ, यह तरह लग रहा था समस्या को ठीक करने का सबसे सरल तरीका। मैंने बनाम आवेदन के लिए कुछ चर्चा की क्योंकि उसने उस के लिए भी पूछा ... – Vincent