मैं इस प्रश्न का उत्तर देने के साथ-साथ मैं कर सकता हूं।
... लेकिन जो सवाल आप नहीं पूछ रहे हैं वह शायद अधिक प्रासंगिक है: क्या आर एल्गोरिदम आर में तेजी से बनाया जा सकता है? यहां जवाब आमतौर पर "हां" होता है। क्या यह "पर्याप्त तेज़" हो सकता है? खैर, कोशिश किए बिना जवाब देना असंभव है (और वर्तमान आर कोड देख रहा है)।
प्रश्न: क्या मेरा आर एल्गोरिदम सी में तेज होगा?
ए: हाँ! यदि आप एल्गोरिदम के लिए "सर्वश्रेष्ठ" सी कोड लिखते हैं, तो यह अधिक तेज़ होगा। यह संभवतः बहुत अधिक ऐसा करने के लिए अधिक काम करेगा।
प्रश्न: क्या सी में बड़े वैक्टरों को क्रमबद्ध किया जा सकता है?
ए: हां। बहु थ्रेडिंग का उपयोग करके, आप गति को काफी सुधार सकते हैं। ... लेकिन आर में sort(x, method='quick')
पर कॉल करके शुरू करें और देखें कि क्या चीजों में सुधार होता है! यादृच्छिक डेटा के लिए डिफ़ॉल्ट विधि बहुत तेज़ नहीं है।
x <- runif(1e7)
system.time(sort(x)) # 2.50 secs
system.time(sort(x, method='quick')) # 1.37 secs
#system.time(tommysort(x)) # 0.51 secs (4 threads)
प्रश्न: कौन सी पुस्तकालय बुनियादी आर कार्यों की नकल करते हैं?
ए: एलएपीएक्स/बीएलएएस आर में मैट्रिक्स गणित को संभालता है। यदि आपको इसकी आवश्यकता है, तो आप पुस्तकालयों को ढूंढ सकते हैं जो आर में वेनिला वाले लोगों की तुलना में बहुत तेज हैं (आप प्रदर्शन में सुधार के लिए आर में भी उनमें से कुछ का उपयोग कर सकते हैं!) ।
More info on BLAS
एक और तरीका है आर से सेल्सियस के लिए और वहाँ से आप आर की कार्यक्षमता के सभी के लिए उपयोग किया एक .Call बनाने के लिए है! inline
पैकेज और Rcpp
पैकेज इसे आसान बनाने में मदद कर सकता है।
आपके आवेदन में आर को एम्बेड करने का एक तीसरा तरीका है। Rinside
इसे आसान बनाने में मदद कर सकता है।
प्रश्न: मैं सी में सीएसवी डेटा कैसे पढ़ूं?
ए: fopen
और fscanf
फ़ंक्शंस देखें। ... और डेटा आयात फ़ंक्शन लिखने के लिए उनका उपयोग करें।
आप किस प्रकार की गति-प्राप्त करने की उम्मीद करते हैं? आपको लगता है कि आर इन परिचालनों के लिए सी से काफी धीमी होगी? क्या आपने http://stackoverflow.com/questions/1330944/speed-of-r-programming- भाषा का अध्ययन किया है? –
विशेष रूप से, 'पंक्तिसमूह' और 'कोलसम' पहले से ही बहुत तेज़ हैं - आप शायद वहां बड़ी संख्या में प्रदर्शन को निचोड़ने में सक्षम नहीं होंगे (और आपको 'मैट्रिक्स' में काफी समृद्ध स्पैस-मैट्रिक्स समर्थन पर विचार करना चाहिए पैकेज, यदि आपके matrices sparse हैं ...)। क्या आप "अन्य उपयोगकर्ताओं को चलाने की क्षमता" के बारे में थोड़ा और विशिष्ट हो सकते हैं? –
यह बहुत काम होगा, esp। चूंकि आप सी प्रोग्रामिंग के साथ खरोंच से शुरू कर रहे हैं। आप आर [कोड स्थापित कर सकते हैं] (http://cran.r-project.org/bin/windows/rw-FAQ.html) उपयोगकर्ता मशीनों पर कम समय में आर कोड को कन्वर्ट करने के लिए ले जाएगा। – hardmath