سؤال

عند تثبيت حزم r (قل mcmcpack في هذا المثال) بموجب Ubuntu ، لديّ خيار بين طريقتي التثبيت التالية:

# Let the distribution's packaging system take care of installation/upgrades
apt-get install r-cran-mcmcpack

# Let R take care of installation/upgrades
install.packages("mcmcpack")

أسئلة:

  • هل تعتبر أي من طريقتي تثبيت حزم R "أفضل الممارسات"؟
  • افترض أنني أولا install.packages("mcmcpack") وبعد ذلك apt-get install r-cran-mcmcpack - هل يجب أن أتوقع المتاعب؟
  • افترض أنني أولا apt-get install r-cran-mcmcpack وبعد ذلك install.packages("mcmcpack") - هل يجب أن أتوقع المتاعب؟
هل كانت مفيدة؟

المحلول

الأمر ليس سهلاً كما يبدو.

  • apt-get update جيد إذا ومتى

    • توجد حزم - ولكن لا يوجد سوى حوالي 150 أو نحو ذلك r-cran-* حزم من مجموعة من 2100+ حزمة على Cran ، لذلك تغطية متفرق إلى حد ما

    • يتم الحفاظ على الحزم وخالية من الأخطاء والحالية

    • أنت سعيد بما فيه الكفاية مع الإصدارات السنوية التي كتبها أوبونتو

  • install.packages() و لاحقا update.packages() جيد إذا ومتى

    • أنت تعرف ما يتطلبه الأمر للحصول على تبعيات بنيت (إلى جانب ذلك r-base-dev) المثبتة

    • أنت لا تمانع في الجري update.packages() باليد وكذلك apt-get التحديثات.

على جهاز Ubuntu الخاص بي في العمل ، أذهب مع الحل الثاني. ولكن لأن الأول أفضل إذا كان لديك تغطية كافية, ، لقد بنينا Cran2deb الذي يوفر 2050+ حزم DEB الثنائية لـ AMD64 و I386 --- ولكن فقط لاختبار Debian. هذا ما أستخدمه في المنزل.

أما بالنسبة للسؤال الأخير عما إذا كنت "يجب أن تتوقع المتاعب": لا ، لأن R_LIBS_SITE تم تعيينه /etc/R/Renvironment ان نكون

# edd Apr 2003  Allow local install in /usr/local, also add a directory for
#               Debian packaged CRAN packages, and finally the default dir 
# edd Jul 2007  Now use R_LIBS_SITE, not R_LIBS
R_LIBS_SITE=${R_LIBS_SITE-'/usr/local/lib/R/site-library:\
/usr/lib/R/site-library:/usr/lib/R/library'}

مما يعنى لك الحزم تدخل /usr/local/lib/R/site-library في حين تمكنت من قبل apt اذهب داخل /usr/lib/R/site-library و (في حالة الحزم الأساسية) /usr/lib/R/library.

أتمنى أن يوضح الأمور. تعد قائمة R-Sig-Debian البريدية مكانًا أكثر استنارة لأسئلة مثل هذه.

نصائح أخرى

  • سأفكر في استخدام apt-get أفضل الممارسات لأنك ستحصل على تحديثات تلقائية من خلال أدوات النظام القياسية.

  • قد يجعلك وجود نسختين مثبتتين في مواقف مربكة: اعتمادًا على إعداد R الخاص بك ، يمكنك تحميل إصدار حزمة آخر ، ثم تتوقع - يجب تحميل خاصك بشكل عام (ربما عفا عليه الزمن) بشكل عام.

  • أنظر فوق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top