मैंने यह प्रश्न आर मेलिंग सूची पर कई बार पूछा है, लेकिन फिर भी एक संतोषजनक उत्तर नहीं मिला।मिनट के लिए पंक्तिमान() के बराबर()
मान लीजिए मैं एक मैट्रिक्स m
m <- matrix(rnorm(10000000), ncol=10)
मैं प्रत्येक पंक्ति के माध्य प्राप्त कर सकते हैं:
system.time(rowMeans(m))
user system elapsed
0.100 0.000 0.097
लेकिन द्वारा
system.time(apply(m,1,min))
user system elapsed
16.157 0.400 17.029
प्रत्येक पंक्ति के न्यूनतम मूल्य प्राप्त करने लगते हैं 100 गुना से अधिक, क्या इसे गति देने का कोई तरीका है?
मुझे 'do.call' के उपयोग पसंद हैं।मैंने 'पमिन' के बारे में सोचा, लेकिन इसे शामिल करने के लिए एक हल्का तरीका नहीं सोचा। सभी अच्छे बच्चे अपने लक्ष्यों को प्राप्त करने के लिए 'do.call' का उपयोग करने में सक्षम होने लगते हैं ... मुझे इस पर कुछ पढ़ने की ज़रूरत है। – Chase
'do.call' काम में आता है जब आप गतिशील समारोह तर्क बनाने के लिए सक्षम होना चाहते हैं (आम तौर पर तर्क की संख्या' के माध्यम से पारित कर दिया जब ... 'ज्ञात नहीं है)। –
अच्छा जवाब, धन्यवाद! pmin.int साथ() यह था भी एक छोटा सा तेजी से – johannes