Squeak.ru - шаблоны программирования

R 3.6 в Debian Stretch

Мне нужно запустить 3.6 на Debian Stretch — я следовал инструкциям здесь:

https://cran.r-project.org/bin/linux/debian/

и использовал это репо:

http://lib.stat.cmu.edu/R/CRAN/bin/linux/debian stretch-cran35/

Я смог установить его. Но 2 пакета, которые мне нужны, r-cran-caret и r-cran-ggplot2 не будут установлены:

# apt-get install r-cran-ggplot2
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 r-cran-ggplot2 : Depends: r-api-3
                  Depends: r-cran-digest but it is not going to be installed
                  Depends: r-cran-gtable (>= 0.1.1) but it is not
going to be installed
                  Depends: r-cran-plyr (>= 1.7.1) but it is not going
to be installed
                  Depends: r-cran-reshape2 but it is not going to be installed
                  Depends: r-cran-scales (>= 0.4.1) but it is not
going to be installed
                  Depends: r-cran-tibble but it is not going to be installed
                  Depends: r-cran-lazyeval but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Есть ли способ получить эти 2 пакета для моей среды?

01.08.2019

  • Предоставьте сообщения об ошибках, которые вы получаете в R при вводе install.packages(ggplot2) 06.08.2019
  • Я не использую сеанс R. Я вызываю R из python с помощью rpy, поэтому мне нужен пакет, доступный на уровне ОС. 06.08.2019
  • Хотя у меня нет опыта работы с rpy, я подозреваю, что вы сталкиваетесь с общей проблемой, а именно с тем, что пакет зависит от версии R, отличной от той, которую вы используете. Если это так, это будет разъяснено в сообщениях об ошибках R. 07.08.2019
  • См. stackoverflow.com/questions/51256462. Вам необходимо установить эти пакеты из CRAN. 07.08.2019
  • Пакеты устанавливаются без ошибок из сеанса R. 07.08.2019

Ответы:


1

Я не уверен, решит ли это вашу проблему.

sudo dpkg --configure -a

В этих случаях мне проще использовать aptitude

sudo apt install aptitude    
sudo aptitude install r-cran-ggplot2

конечно, вы можете попробовать то же самое с кареткой, если работает ggplot2.

Однако возникает вопрос, если вы загружаете R в терминал и пытаетесь установить эти пакеты в R, какие сообщения об ошибках вы получаете, если получаете?

введите R в терминале и после загрузки введите

install.packages("ggplot2",dependencies=TRUE)

какие сообщения об ошибках вы получаете, когда вы это делаете?

Другая распространенная проблема заключается в том, что версия пакета, который вы пытаетесь установить, устанавливается в той версии R, которую вы используете. В этом случае вам нужно загрузить пакет из крана, разархивировать его и установить из локальных файлов.

откройте терминал и введите R, затем внутри типа сеанса

packageurl <- "https://cran.r-project.org/src/contrib/ggplot2_3.2.0.tar.gz"
install.packages(packageurl, repos=NULL, type="source", dependencies=TRUE)

Если у вас есть общая проблема с версиями, эта команда, надеюсь, не будет проверять версию ggplot и версию R.

В качестве альтернативы, если вы не хотите явно запускать тип сеанса R в терминале

wget https://cran.r-project.org/src/contrib/ggplot2_3.2.0.tar.gz
R CMD INSTALL ggplot2_3.2.0.tar.gz repos=NULL type="source" dependencies=TRUE
06.08.2019
  • Пытался сделать это с помощью aptitude, не удалось с немного другими ошибками - много подобных сообщений r-cran-colorspace : Depends: r-api-3 which is a virtual package, provided by: - r-base-core (3.3.3-1), but 3.6.1-2~stretchcran.0 is installed 07.08.2019
  • Вы можете открыть сеанс R, набрав R в терминале? 07.08.2019
  • пожалуйста, проверьте мое последнее предложение, только что отредактировал его и дайте мне знать, если оно работает 07.08.2019
  • Это не удалось с ERROR: dependencies 'digest', 'gtable', 'lazyeval', 'reshape2', 'rlang', 'scales', 'tibble', 'viridisLite', 'withr' are not available for package 'ggplot2' 07.08.2019
  • попробуйте добавить в конец dependencies=TRUE 07.08.2019
  • Я подозреваю, что тогда у него возникнут проблемы с установкой этих зависимостей. Чтобы установить ggplot2, вы должны сначала установить эти пакеты, что, если честно, меня беспокоит. 07.08.2019
  • теперь получите Warning: invalid package 'dependencies=TRUE' 07.08.2019
  • На самом деле ни один из параметров командной строки не работает. 07.08.2019

  • 2

    Вам не хватает зависимостей, и apt-get сообщает вам, что они не работают. Вам нужно удалить сломанные зависимости из вашей библиотеки R, которая должна быть в /usr/lib/R/site-library.

    Почему бы вам просто не установить его прямо в R?

    install.packages(c("caret", "ggplot2"), dependencies = TRUE)
    

    Как вы упомянули, вы хотите использовать докер: см. пакет littler Дирка Эддельбюттеля: https://github.com/eddelbuettel/littler особенно install2.r функция и ее опция -d

    Примеры того, как его используют другие, см. в образах докеров rocker.

    Другое редактирование: если вы решите использовать littler, я думаю, вам понадобится этот синтаксис

    install2.r -d TRUE caret ggplot2
    
    06.08.2019
  • Я не использую сеанс R. Я вызываю R из python с rpy внутри контейнера докеров, поэтому мне нужен пакет, доступный на уровне ОС. Я попытался установить его из R, и это сработало. Но мне нужно, чтобы они устанавливались с помощью apt, когда я делаю образ докера. 07.08.2019
  • Почему бы вам не опубликовать свой файл докеров, чтобы мы увидели, что не так? Вы должны проверить, как Дирк Эддельбюттель и Карл Беттигер делают это на изображениях рокеров: github.com/rocker-org /рокер 07.08.2019
  • Используйте rscript для установки 07.08.2019
  • Потому что установка занимает около 3 минут. В среде CI это не стоит того. 05.03.2021
  • Новые материалы

    Очистить файлы Program .cache в Ubuntu 20.10
    Очистите кеш за несколько простых шагов! GNU / Linux реализовал эффективное управление хранилищем для своих пользователей. Но заметили ли вы, что в вашей системе Linux заканчивается место,..

    Использование Node.js для чтения действительно больших файлов (часть 1)
    В этом сообщении в блоге есть интересный источник вдохновения. На прошлой неделе кто-то на одном из моих каналов в Slack опубликовал тестовое задание, которое он получил на должность..

    Введение в градиентный спуск и обратное распространение
    Введение в градиентный спуск и обратное распространение Как машинное обучение? Машинное обучение ( ML ) - это исследование компьютерных алгоритмов, которые автоматически улучшаются по..

    Шаблон CQRS — C#
    Этот архитектурный шаблон в основном говорит о том, что мы можем использовать одну модель для операций чтения, а другую — для операций записи. Звучит хорошо, но реализовать его может быть..

    Освоение функций потерь в машинном обучении для регрессии: полное руководство по оптимизации…
    Введение: Функция потерь является важным компонентом алгоритмов машинного обучения и статистических моделей. Его роль заключается в измерении несоответствия между прогнозируемым выходом модели и..

    10 языков программирования, которые изменят мир в 2023 году
    Мир программирования постоянно развивается, и востребованные языки постоянно меняются. Однако есть несколько языков, которые выдержали испытание временем и по-прежнему очень ценны для изучения в..

    Чем заняться в наших библиотеках (апрель 2023 г.)
    В апреле этого года мы празднуем обучение по-разному — от принятия позитивного и устойчивого мышления до понимания и сохранения местных популяций пчел, а также изучения новейших и новейших..