क्या कोई पूर्वनिर्धारित स्थान है जहां एक आर पैकेज कैश्ड डेटा स्टोर कर सकता है? डेटा सत्रों में जारी रहना चाहिए। मैं ${R_LIBS_USER}/package_name
की उपनिर्देशिका बनाने के बारे में सोच रहा था, लेकिन मुझे यकीन नहीं है कि यह पोर्टेबल है और यदि मेरा पैकेज सिस्टमव्यापी स्थापित है तो यह "अनुमति" है।क्या कोई लगातार स्थान है जो हमेशा लिखने योग्य होता है जिसे पैकेज द्वारा डेटा कैश के रूप में उपयोग किया जा सकता है?
विचार है निम्नलिखित: (data()
के प्रलेखन के अनुसार) पैकेज का data
उपनिर्देशिका जो data(mydata)
बुला द्वारा निष्पादित किया जाएगा में एक अनुसंधान स्क्रिप्ट mydata.R
बनाएँ। यह स्क्रिप्ट इंटरनेट से डेटा लोड करेगी और इसे कैश करेगी, अगर इसे पहले कैश नहीं किया गया है। (यदि डेटा पहले ही कैश किया गया है, तो कैश का उपयोग किया जाएगा।) इसके अतिरिक्त, कैश को अमान्य करने के लिए एक फ़ंक्शन प्रदान किया जाएगा और/या यह जांचने के लिए कि डेटा का कोई नया संस्करण ऑनलाइन उपलब्ध है या नहीं।
वर्तमान में, डेटा फ़ाइलों के चार प्रारूप समर्थित हैं::
यह
data()
के प्रलेखन से है
फ़ाइलों न खत्म होने वाली 'आर' या 'आर' स्रोत हैं() डी में, आर कार्यशील निर्देशिका के साथ अस्थायी रूप से संबंधित फ़ाइल युक्त निर्देशिका में बदल गया। (डेटा सुनिश्चित करता है कि utils संकुल जुड़ा हुआ है, के मामले में यह utils :: डेटा के माध्यम से चलाया जा रहा था।)
...
दरअसल, data
उपनिर्देशिका में एक फ़ाइल fortytwo.R
बनाने निम्नलिखित सामग्री के साथ एक पैकेज की:
fortytwo = data.frame(answer=42)
और फिर data(fortytwo)
क्रियान्वित एक डेटा फ्रेम चर fortytwo
पैदा करता है। अब सवाल यह है कि fortytwo.R
डेटा को कैश करेगा यदि गणना करना मुश्किल था?
EDIT: मैं दो पैकेज बनाने के बारे में सोच रहा हूं: एक "डेटा" पैकेज जो डेटा प्रदान करता है, और एक "कोड" पैकेज जो उस पर चल रहा है। प्रश्न "डेटा" पैकेज से संबंधित है: यह प्रति उपयोगकर्ता संग्रहण में फ़ाइलों को कहां स्टोर कर सकता है ताकि यह आर सत्रों में लगातार हो और विभिन्न आर परियोजनाओं से सुलभ हो?
संबंधित: Package that downloads data from the internet during installation।
आप https://github.com/hadley/rappdirs पर एक नज़र डालना चाहते हैं - यह ऐपडिर्स का एक बंदरगाह है, जो एक पायथन पुस्तकालय है जो ओएस-विशिष्ट तरीके से सही निर्देशिकाओं को खोजने का प्रयास करता है। – hadley
बस स्पष्टीकरण देने का प्रयास कर रहा है: क्या आपका मतलब है कि आर स्क्रिप्ट द्वारा संसाधित किए जाने के बाद डेटा कहां संग्रहीत किया जा सकता है? दूसरे शब्दों में, क्या आपका प्रश्न वास्तव में डेटा पैकेज से डेटा के बारे में है, या डेटा जो किसी भी प्रसंस्करण से आउटपुट के रूप में उत्पन्न होता है? यह * बाद * की तरह लगता है। – A5C1D2H2I1M1N2O1R2T1
@ हैडली: क्या कोई मौका है कि यह जल्द ही किसी भी समय सीआरएएन पर दिखाई देगा? यदि ऐसा करने के लिए कोई आर-विशिष्ट तरीका नहीं है (जैसे इसे '$ {R_USER_LIBS} के उपदिर में डालने जैसा), तो मैं खुशी से आपके पैकेज का उपयोग करूंगा। – krlmlr