1 R程序包来源

目前R程序包共有20200+个(2020.08.01,https://www.rdocumentation.org统计),主要来自三个网站:


1.CRAN (https://cran.r-project.org)2.github (https://github.com)3.Bioconductor (http://bioconductor.org)

其中最常用的是CRAN包,CRAN上有16121个程序包(2020.08.09),在线安装使用如下命令:


install.packages("")

例:

install.packages("vegan") #安装vegan程序包install.packages("spaa", "vegan", "ade4") #安装多个程序包

2 github

地址 https://github.com
  Git是目前业界最流行的版本控制系统(Version Control System), GitHub是开源代码托管平台,它提供基于 Git 的代码托管服务。Github拥有超过900万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。
  安装Github上的R程序包需要用到devtools程序包

requiredPackages = c('devtools') # 加载/安装需要的包  for(p in requiredPackages){    if(!require(p,character.only = TRUE)) install.packages(p)    library(p,character.only = TRUE)  }library(devtools)  #加载devtools包

2.1网络安装

如果计算机联网,可使用如下命令安装:

install_github("<程序包所有者>/<程序包名>")devtools::install_github("<程序包所有者>/<程序包名>")# 'devtools::' 为指定使用devtools包中的名录,避免有命令冲突情况,非必要

例:

install_github("gastonstat/plspm")

2.2本地安装

如果计算机不能联网,或各种原因不能连上github,下载相应的程序包以后放入到需要安装的计算机中。使用如下命令安装:

devtools::install_local("包所在地址//")  #镜像选择all-- 1

例:

devtools::install_local("D:\Desktop\plspm-master.zip")

3 Bioconductor

地址:http://bioconductor.org  


专门做生物信息学R包的平台,如KEGG、GO富集分析,pathway分析等相关的程序包均在此平台上。安装介绍:http://bioconductor.org/install/


requiredPackages = c('BiocManager') # 加载/安装需要的包for(p in requiredPackages){  if(!require(p,character.only = TRUE)) install.packages(p)  library(p,character.only = TRUE)}BiocManager::install("", version = "")  #安装3.10版本的程序包

例:

BiocManager::install("GenomicRanges", version = "3.9")  #安装3.9版本的程序包

  比较:CRAN是官方程序包存储库,发布程序包需要通过审查、测试,帮助文档齐备、代码规范,社区活跃度非常高,每个月都有很多程序包发布/更新。Bioconductor是生物信息学方面程序包的专题库,活跃度也较高,代码较为规范,帮助文档偶有缺失。Github是开源项目常用的存储库,主要用于版本控制和多人协作,对于R程序包的优势在于其更新快(并不一定是原作者进行),第一时间发布共享,但许多包没有帮助文档,降低了可信度,增加了学习门槛。

4 爬取官方CRAN包信息

# 加载/安装需要的包requiredPackages = c('magrittr', 'wordcloud2', 'jiebaR', 'rvest')for(p in requiredPackages){  if(!require(p,character.only = TRUE)) install.packages(p)  library(p,character.only = TRUE)}#读取速度主要取决于网速,需要时间page "https://mirror.lzu.edu.cn/CRAN/web/packages/available_packages_by_name.html")#解析网页也需要时间,取决于CPU和内存,使用system.time()查看运行时间system.time(pkg_table %   html_table(fill = T))   class(pkg_table)# 返回list,这个list应该包含了网页中的所有table# 整个网页就只有一个tablepkg_table # 转化为数据框才能数据进行缺失值处理str(pkg_table)  # obs.数量即为包的数量pkg_table 1,]  colnames(pkg_table) "package",## R包信息词云分析rpkg %   .[nchar(.)>1] %>%   table(.) %>%   .[!grepl('[0-9]+',names(.))] %>%   .[!grepl('a-zA-Z',names(.))] %>%    sort(., decreasing = TRUE) %>%   .[1:1000] %>%   data.frame(.)colnames(rpkg) "word",#绘图wordcloud2(rpkg) #未排除干扰词汇的绘图

igraph包介绍 r语言 r语言vegan包_r library car

4.1 排除一些特定干扰词汇

#定义需要排除的干扰词汇prep.words "for",                "with","to","on","by","or","from",                 "Using",                "The", "the", "an","An",                "Packages", "Package", "Tools", "Tool")#删除干扰词汇信息rpkg which(rpkgrpkg[1:10,]
#绘图wordcloud2(rpkg, fontFamily = "Times New Roman",            backgroundColor = "black",  color = 'random-light')

igraph包介绍 r语言 r语言vegan包_igraph包介绍 r语言_02

4.2 含有Ecology的R包数量

which(rpkg$word %in% c("Ecology","ecology")) %>%   rpkg[.,]