从Github上获取R包/安装

install.packages()函数可以安装发布在CRAN上的R包,可其它的包安装方式需要通过devtools包,该包使得开发的R包变得简单,主要用于分发R包 。

1.通过Github仓库名和包名加载

不是所有的R包都提交上传到CRAN,如Github,需要通过一定的渠道进行安装

install.packages("devtools")
library(devtools)
install_github("RevolutionAnalytics/RHadoop")

在这里插入图片描述

2.通过包名安装R包:已发布至CRAN
(1)开发者将自己开发的R包发布到了CRAN并保存在Github仓库
install.packages('githubinstall') #加载github
library(githubinstall)
githubinstall('RHadoop')
(2)githubinstall()会从Github的仓库中搜索相应的R包,并询问你是否安装。其中githubinstall()会提示你安装建议的R包,但我们可能只想知道都有哪些建议。
> library(githubinstall)
> githubinstall('RHadoop')
Select a number or, hit 0 to cancel. 

 1: 56north/Rmazon             A R package for multi-dimensional data visualization
 2: Airfixer/Raoul             A R package for multi-dimensional data visualization
 3: DataSciBurgoon/aop         A R package for multi-dimensional data visualization
 4: HenrikBengtsson/R.oo       A R package for multi-dimensional data visualization
 5: JARS3N/door                A R package for multi-dimensional data visualization
 6: ManuelOrdovas/REVTool      A R package for multi-dimensional data visualization
 7: PLStenger/ReadGTF          A R package for multi-dimensional data visualization
 8: Rexamine/agop              A R package for multi-dimensional data visualization
 9: bhklab/RadioGx             A R package for multi-dimensional data visualization
10: brianboonstra/ragtop       A R package for multi-dimensional data visualization
11: caleblareau/indRop         A R package for multi-dimensional data visualization
12: chumbleycode/rnabook       A R package for multi-dimensional data visualization
13: dpastoor/RTodo             A R package for multi-dimensional data visualization
14: dsidavis/Raido             A R package for multi-dimensional data visualization
15: dsidavis/ReadPDF           A R package for multi-dimensional data visualization
16: ericaenjoy3/GRFLoop        A R package for multi-dimensional data visualization
17: etmc/hadron                A R package for multi-dimensional data visualization
18: gherardovarando/Rbmop      A R package for multi-dimensional data visualization
19: gowusu/vadose              A R package for multi-dimensional data visualization
20: hadley/sloop               A R package for multi-dimensional data visualization
21: hirenj/Rgator              A R package for multi-dimensional data visualization
22: jacob-ogre/esadocs         A R package for multi-dimensional data visualization
23: jamovi/Rjamovi             A R package for multi-dimensional data visualization
24: jefferis/readobj           A R package for multi-dimensional data visualization
25: jeffreyhorner/Rook         A R package for multi-dimensional data visualization
26: johndharrison/Rsoup        A R package for multi-dimensional data visualization
27: kbolab/radioP              A R package for multi-dimensional data visualization
28: kos59125/shadowy           A R package for multi-dimensional data visualization
29: larslau/pavpop             A R package for multi-dimensional data visualization
30: lgatto/yagop               A R package for multi-dimensional data visualization
31: michaeldorman/shadow       A R package for multi-dimensional data visualization
32: mikemeredith/AHMbook       A R package for multi-dimensional data visualization
33: ndbrown6/voodoo            A R package for multi-dimensional data visualization
34: njahn82/roadoi             A R package for multi-dimensional data visualization
35: ropensci/roadoi            A R package for multi-dimensional data visualization
36: nlhuong/gradord            A R package for multi-dimensional data visualization
37: nozma/RondTool             A R package for multi-dimensional data visualization
38: padpadpadpad/nlsLoop       A R package for multi-dimensional data visualization
39: paulponcet/statoo          A R package for multi-dimensional data visualization
40: plgrmr/readKor             A R package for multi-dimensional data visualization
41: qxde01/RHanLP              A R package for multi-dimensional data visualization
42: rafaeloliveiralima/RJabot  A R package for multi-dimensional data visualization
43: reidt03/RadOnc             A R package for multi-dimensional data visualization
44: s-fleck/tatoo              A R package for multi-dimensional data visualization
45: statistikat/tatoo          A R package for multi-dimensional data visualization
46: seasmith/ggloop            A R package for multi-dimensional data visualization
47: slarge/HabMod              A R package for multi-dimensional data visualization
48: sneumann/RaMoNA            A R package for multi-dimensional data visualization
49: sneumann/Rdisop            A R package for multi-dimensional data visualization
50: spacedman/smoop            A R package for multi-dimensional data visualization
51: statsmaths/ado             A R package for multi-dimensional data visualization
52: wwbrannon/ado              A R package for multi-dimensional data visualization
53: tejaslodaya/troop          A R package for multi-dimensional data visualization
54: tlevine/mdoow              A R package for multi-dimensional data visualization
55: wahani/aoos                A R package for multi-dimensional data visualization
56: wccarleton/Rlamap          A R package for multi-dimensional data visualization
57: wrathematics/Romp          A R package for multi-dimensional data visualization
58: wrathematics/coop          A R package for multi-dimensional data visualization
59: yannabraham/Radviz         A R package for multi-dimensional data visualization

Selection:
(3)gh_suggest()以向量的形式返回建议的仓库名。

我想通过Github上安装rhbase,采用方法如下:
> gh_suggest(“rhbase”)
[1] “statsmaths/hbase”

3.以用户名搜索其开发的R包

gh_list_packages()函数以数据框的形式返回Github上R包的仓库名列表。例如,你想知道谢大大(谢益辉,统计之都创始人)都开发了哪些R包,运行如下:

yihuiverse <- gh_list_packages(username = "yihui")
head(yihuiverse)
4. 通过关键词搜索R包

gh_search_packages()函数返回Github上所有标题包含给定关键词的R包。例如,搜索所有包含lasso关键词的R包,运行如下:

gh_search_packages('lasso')
5. 显示Github上给定R函数的源代码

gh_show_source()会在Github上查找指定R函数的源代码,并在默认浏览器中显示。

gh_show_source("mutate", "dplyr")

如果加载了该函数所属的R包,直接输入函数名即可。

library(dplyr)
gh_show_source(mutate)
6.更新R包列表

githubinstall包通过Gepuro Task Views获取Github上的R包列表。Gepuro Task Views每天都会爬取Github并更新信息。不过,你可能一直以来都是通过R界面来更新R包。gh_update_list()更新R包的方法如下:

gh_update_package_list()

本文主要参考了网址为:http://www.xueqing.tv/cms/article/223
在其发布的内容上进行了总结和尝试。

<think>好的,用户想知道如何从GitHub手动安装R。首先,我需要回忆一下R安装的几种常见方式。通常,用户会用install.packages()从CRAN安装,或者用devtools::install_github()直接从GitHub安装。但这里用户提到的是“手动安装”,所以可能需要直接从源代码安装,而不是通过devtools这样的工具。 接下来,手动安装的步骤应该括下载源代码、解压、然后本地安装。用户需要从GitHub下载的压缩文件,通常是ZIP或tar.gz格式。然后使用R的install.packages()函数,指定repos=NULL,并指向本地文件路径。可能还需要处理依赖问题,手动安装依赖。 还要考虑用户可能遇到的常见问题,比如依赖项缺失、编译工具是否需要(比如Rtools在Windows或Xcode在macOS),以及权限问题。此外,用户可能需要先安装一些开发工具或者系统库,特别是如果含编译代码的话。 引用部分中,引用[2]提到GitHub CLI的使用,但用户的问题是关于手动安装,可能不需要CLI工具,不过可以提到克隆仓库的方法作为另一种选项。引用[3]提到Nix的下载方式,但可能和R安装关系不大,不过可以忽略,除非用户的环境涉及Nix。 需要分步骤说明,确保用户能按照步骤操作。同时,生成相关问题,比如如何解决依赖、如何从其他平台安装等。还要检查是否需要管理员权限,以及如何设置工作目录等细节。 最后,确保所有代码示例正确,比如使用install.packages("路径", repos=NULL, type="source"),并提醒注意文件路径的正确性。可能还需要提到使用devtools的方法作为对比,但用户明确问的是手动安装,所以主要集中在此方法。</think>### 从GitHub手动安装R的步骤指南 #### 1. **下载源代码** - 访问GitHub仓库页面(例如:`https://github.com/用户名/仓库名`) - 点击绿色按钮 **"Code"**,选择 **"Download ZIP"** 获取压缩 - 解压文件到本地目录(如:`~/Downloads/名-master`) #### 2. **通过R命令安装** ```R # 设置工作目录到解压后的文件夹路径 setwd("~/Downloads/名-master") # 手动安装(需要管理员权限) install.packages( pkgs = ".", # 当前目录 repos = NULL, # 禁用CRAN仓库 type = "source", # 从源代码编译 dependencies = TRUE # 自动安装依赖 ) ``` #### 3. **处理依赖问题** - 若提示缺少依赖,需先通过CRAN安装: ```R install.packages("缺失的名") ``` - 若依赖同样来自GitHub,需重复上述手动安装步骤 #### 4. **验证安装** ```R library(名) # 无报错即表示安装成功 ``` ### 关键注意事项 1. **编译工具需求**: - Windows需安装[Rtools](https://cran.r-project.org/bin/windows/Rtools/)[^1] - macOS需安装Xcode命令行工具(通过`xcode-select --install`) - Linux需安装开发工具链(如`build-essential`) 2. **权限问题**: - Linux/macOS用户可能需要使用`sudo R`启动会话 - 或通过`.libPaths()`检查写入权限 3. **版本控制建议**: ```R # 查看已安装版本 packageVersion("名") ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值