R कहाँ पैकेज की दुकान करता है?


207

install.packages()आर में समारोह स्वत: unzipping उपयोगिता है कि आर में हो जाता है और पैकेज इंस्टॉल है

  1. मुझे यह कैसे पता चलेगा कि संकुल को संग्रहीत करने के लिए R ने किस निर्देशिका को चुना है?

  2. मैं उस निर्देशिका को कैसे बदल सकता हूं जिसमें आर स्टोर और एक्सेस पैकेज हैं?

जवाबों:


248

Install.packages कमांड .libPaths चर के माध्यम से दिखता है। यहाँ OSX पर मेरा क्या दोष है:

> .libPaths()
[1] "/Library/Frameworks/R.framework/Resources/library"

मैं डिफ़ॉल्ट रूप से वहां पैकेज स्थापित नहीं करता, मैं उन्हें अपने घर निर्देशिका में स्थापित करना पसंद करता हूं। मेरे .Rprofile में, मेरे पास यह पंक्ति है:

.libPaths( "/Users/tex/lib/R" )

यह .libPaths वैरिएबल के सामने "/ Users / tex / lib / R" डायरेक्टरी जोड़ता है।


यह वही है जो मैं करना चाहता हूं, लेकिन मैं कैसे पहुंचता हूं और .Rprofile? प्रॉम्प्ट इसे किसी ऑब्जेक्ट या फ़ंक्शन के रूप में नहीं पहचानता है
मिल्कट्रैडर

7
यह एक फाइल है । फिर, ठीक मैनुअल पढ़ें, और / या मदद (स्टार्टअप)।
डिर्क एडल्डबुलेटेल

44

यह 'आर इंस्टॉलेशन एंड एडमिनिस्ट्रेशन' मैनुअल में प्रलेखित है जो आपकी स्थापना के साथ आया था।

मेरे लिनक्स बॉक्स पर:

R> .libPaths()
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"      
[3] "/usr/lib/R/library"           
R> 

इसका अर्थ है कि डिफ़ॉल्ट पथ इनमें से पहला है। आप दोनों के तर्क से install.packages()(R के अंदर) या R CMD INSTALL(R के बाहर ) से ओवरराइड कर सकते हैं ।

आप R_LIBS_USER चर सेट करके भी ओवरराइड कर सकते हैं।


मुझे एक Windows Vista मशीन मिल गई है, लेकिन यह मानकर कि यह प्रक्रिया मौजूद है, क्या आप पैकेज नाम के साथ install.packages () तर्क सूची में निर्देशिका निर्दिष्ट करते हैं?
मिल्कट्रैडर

3
क्या आपने अभी तक 'सहायता (install.packages)' की खोज की है? इसके अलावा, मेरी पिछली टिप्पणी के अनुसार 'सहायता (स्टार्टअप)' देखें। और उन पुस्तिकाओं को पढ़ते हैं। अंत में, * डोज पर मैं एक फ़ाइल में R_LIBS = "C: / opt / R / पुस्तकालय" सेट करता हूं। मुझे पता है कि आप इसके बारे में भी पूछने जा रहे हैं - इसलिए मदद (स्टार्टअप) पढ़ें। ठीक? ;-)
डिर्क एडल्डबुलेटेल

1
मुझे अपने जलाने (3,000+ पृष्ठ एक सहित) पर एक दर्जन आर मैनुअल मिले हैं और स्टार्टअप मदद फ़ाइल के बारे में पता नहीं था। मैं मैनुअल पढ़ रहा हूं और एक डेड-एंड मारा हूं। जाओ आंकड़ा यह सब के साथ एक सरल जवाब था। क्या मैं RTFM प्रश्नों के लिए अंक खो देता हूं <- मेरे पास खोने के लिए बहुत सारे नहीं हैं। धन्यवाद फिर से डिर्क। अगले सप्ताह आपको R / Finance में मिलते हैं। R कौशल पर रैंप करना सबसे अच्छा है क्योंकि मैं प्रस्तुतियों के दौरान धूल नहीं फांक सकता।
मिल्कट्रैडर

1
3000+ पृष्ठ सभी सहायता पृष्ठ - कम से कम सहायक का एक संयोजन है। उपरोक्त 'इंस्टॉलेशन और एडमिन' एक बहुत उपयोगी होना चाहिए जो आप यहाँ हैं।
डिर्क एडल्डबुलेटेल

बैश कमांड लाइन से इन्हें खोजने का एक समान तरीका है? यानी, एक पर्यावरण चर जो निर्दिष्ट करता है कि आर लाइब्रेरीज़ कहाँ स्थापित हैं $R_LIBSऔर $R_LIBS_USERसेट नहीं हैं? (मैं inst/किसी भी Unix सिस्टम पर एक R स्क्रिप्ट को संस्थापित पैकेज की निर्देशिका में निष्पादित करने में सक्षम होना चाहता हूँ )।
डेविड लेबॉउर

12

उपरोक्त दो उत्तरदाताओं से दिशा के लिए धन्यवाद। जेम्स थॉम्पसन के सुझाव ने विंडोज उपयोगकर्ताओं के लिए सबसे अच्छा काम किया।

  1. उस जगह पर जाएं जहां आपका आर प्रोग्राम इंस्टॉल किया गया है। यह R_Homeसाहित्य में के रूप में जाना जाता है । एक बार जब आप इसे पा लेते हैं, तो / etc उपनिर्देशिका पर जाएँ।

    C:\R\R-2.10.1\etc
  2. Rprofile.site नामक इस फ़ोल्डर में फ़ाइल का चयन करें। मैंने इसे वीआईएम के साथ खोला। आप पाएंगे कि यह कोड के 20 से कम लाइनों के साथ एक नंगे हड्डियों की फाइल है। मैंने निम्नलिखित को कोड के अंदर डाला:

    # my custom library path
    .libPaths("C:/R/library")

    (टिप्पणी मैं फ़ाइल के लिए क्या किया का ट्रैक रखने के लिए जोड़ा गया है।)

  3. आर में, .libPaths()फंक्शन टाइप करने पर पहला टारगेट मिलता हैC:/R/Library

नोट: इसे प्राप्त करने के लिए एक से अधिक तरीके होने की संभावना है, लेकिन मैंने जिन अन्य तरीकों की कोशिश की, वे किसी कारण से काम नहीं कर पाए।


1
मैंने कहा कि .libPaths=("C:/R/library")मेरे Rprofile.site फ़ाइल में पेस्ट की गई रेखा । मैं R 2.13.1 64 बिट लॉन्च करता हूं और यह त्रुटि प्राप्त करता हूं: त्रुटि: '.libPaths' के लिए लॉकिंग बाइंडिंग का मान नहीं बदल सकता। मैं विंडोज 7. का उपयोग कर रहा हूं
फ्रेड

1
डेव का जवाब देखें : यह होना चाहिए .libPaths("...")(कॉल और असाइनमेंट नहीं)।
कोडफॉक्स

0

आपको '=' नहीं चाहिए

.libPaths("C:/R/library")आप Rprofile.site फ़ाइल में उपयोग करें

और सुनिश्चित करें कि आपके पास "प्रतीक (Shift-2) सही है"

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.