一位朋友给我发来一篇关于使用R爬取The New York Times的教程,链接如下: 使用R爬取纽约时报。我非常想尝试一下。但是,第一步是从源代码中安装一个叫做[RJSONIO][2]的包。
我对R有一定的了解,但是我不知道如何从源代码中安装一个包。
我的操作系统是macOS(OS X)。
一位朋友给我发来一篇关于使用R爬取The New York Times的教程,链接如下: 使用R爬取纽约时报。我非常想尝试一下。但是,第一步是从源代码中安装一个叫做[RJSONIO][2]的包。
我对R有一定的了解,但是我不知道如何从源代码中安装一个包。
我的操作系统是macOS(OS X)。
install.packages()
并设置repos=NULL
:install.packages(path_to_file, repos = NULL, type="source")
在Windows上,表示完整路径和文件名的path_to_file
将类似于:"C:\\RJSONIO_0.2-3.tar.gz"
。
"/home/blah/RJSONIO_0.2-3.tar.gz"
。file_name_and_path
是一个R包的本地源代码库,这也适用。 - Faheem Mitha下载源代码包,打开Terminal.app,在当前文件所在的目录中导航,然后执行:
R CMD INSTALL RJSONIO_0.2-3.tar.gz
请注意,这只有在以下情况下才能成功:a)软件包不需要编译,或者b)编译所需的系统工具已经安装。请参阅:Mac OS X上的 R
你可以直接从代码库安装(注意 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
从CRAN下载,您可以直接从GitHub存储库地址安装。因此,如果您想要https://github.com/twitter/AnomalyDetection
的包,请使用:
library(devtools)
install_github("twitter/AnomalyDetection")
事半功倍。
--binary
选项构建二进制包。R CMD build --binary RJSONIO_0.2-3.tar.gz
R CMD build --binary
已经过时,请使用 R CMD INSTALL --build
代替。 - f3lix如果您拥有自己编写的源代码,从GitHub下载(克隆)的源代码,或者以其他方式从其他来源复制或移动到计算机上,则安装软件包/库的简单方法如下:
只需执行以下简单操作即可:
# install.packages("devtools")
devtools::install('path/to/package')
从这里,您可以克隆GitHub存储库并使用以下命令进行安装:
git clone https://github.com/user/repo.git
R -e "install.packages('devtools');devtools::install('path/to/package')"
或者如果您已经安装了开发工具,您可以跳过第一步,直接克隆存储库并运行:
R -e "devtools::install('path/to/package')"
apt-get update
apt-get install build-essential libcurl4-gnutls-dev libxml2-dev libssl-dev libfontconfig1-dev libharfbuzz-dev libfribidi-dev libfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev -y