Друг послал меня по этому замечательному учебнику по webcraping NYtimes с R. Мне бы очень хотелось попробовать это. Однако первым шагом является установка пакета из RJSONIO из источника.
Я знаю R достаточно хорошо, но я понятия не имею, как установить пакет из исходного кода.
Я запускаю Mac OSX.
Если у вас есть файл локально, используйте install.packages()
и установите repos=NULL
:
install.packages(path_to_file, repos = NULL, type="source")
Где path_to_file
будет представлять полный путь и имя файла:
"C:\\RJSONIO_0.2-3.tar.gz"
."/home/blah/RJSONIO_0.2-3.tar.gz"
.file_name_and_path
является локальным исходным хранилищем пакета R.
INSTALL_opts
может использоваться для передачи параметров в R CMD INSTALL
. Например, "--no-multiarch"
Загрузите исходный пакет, откройте Terminal.app, перейдите в каталог, в котором у вас есть файл, а затем выполните:
R CMD INSTALL RJSONIO_0.2-3.tar.gz
Обратите внимание, что это будет выполнено только тогда, когда: a) пакет не нуждается в компиляции или b) присутствуют необходимые системные инструменты для компиляции. См.: https://cran.r-project.org/bin/macosx/tools/
Вы можете установить непосредственно из репозитория (обратите внимание на type="source"
):
install.packages("RJSONIO", repos = "http://www.omegahat.org/R", type="source")
Дополнительный (но тривиальный) совет для установки более старой версии пакетов из исходного кода.
Во-первых, если вы вызываете "install.packages", он всегда устанавливает последний пакет из репо. Если вы хотите установить более старую версию пакетов, скажем, для совместимости, вы можете вызвать install.packages( "url_to_source", repo = NULL, type = "source" ). Например:
install.packages("http://cran.r-project.org/src/contrib/Archive/RNetLogo/RNetLogo_0.9-6.tar.gz", repo=NULL, type="source")
Без ручной загрузки пакетов на локальный диск и перехода в командную строку или установки с локального диска я нашел, что это очень удобно и упрощает вызов (один шаг).
Плюс: вы можете использовать этот трюк с библиотекой devtools dev_mode, чтобы управлять различными версиями пакетов:
Ссылка: doc devtools
Кроме того, вы можете создать двоичный пакет с помощью опции -binary.
R CMD build --binary RJSONIO_0.2-3.tar.gz
R CMD build --binary
устарела; вместо этого используйте R CMD INSTALL --build
Из cran вы можете установить непосредственно из адреса репозитория github. Поэтому, если вы хотите пакет в https://github.com/twitter/AnomalyDetection
:
library(devtools)
install_github("twitter/AnomalyDetection")
делает трюк.
Я предпочитаю устанавливать пакет из R cran project. Я буду искать имя пакета, и если он будет доступен, я буду выполнять команду из моей оболочки R, чтобы установить ее непосредственно из проекта R-крана. Ваш пакет доступен в каталоге R. Так вот что я буду делать
install.packages("RJSONIO")
Бонус - Загрузка пакета в текущую сессию R
library(RJSONIO)