R语言中查询和分析packages的方法汇总

前言

各种各样的packages为R进行各种各种的工作提供了丰富的支持,了解各种package的使用情况,相互关系,有利于我们跟进技术发展的脚步也有利于知道当前分析问题的热点。

获取CRAN上package的信息

library(pacman)
p_load(packagefinder)
p_load(dlstats)
p_load(cranly)

#获取CRAN上package的数据库
p_db<-tools::CRAN_package_db()

#查看有多少packages
dim(p_db)
# [1] 15438    64

#查看p_db中包的信息
View(p_db)

# 对p_db进行清洗、预处理
package_db <- clean_CRAN_db(p_db) 

根据packages的信息进行分析,可视化处理

使用情况的条形图

#组建网络关系
package_network <- build_network(package_db)
package_summaries <- summary(package_network)
#做出packaages的网络关系信息做出条形图
##可以依赖的信息(according_to):names(package_summaries)
# [1] "package"          "n_authors"        "n_imports"
# [4] "n_imported_by"    "n_suggests"       "n_suggested_by"
# [7] "n_depends"        "n_depended_by"    "n_enhances"
# [10] "n_enhanced_by"    "n_linking_to"     "n_linked_by"
# [13] "betweenness"      "closeness"        "page_rank"
# [16] "degree"           "eigen_centrality"
plot(package_summaries, according_to = "degree", top = 20)

在这里插入图片描述
从中可以看到目前进行R数据分析的一些常用package, 小伙伴们是不是都掌握了?请自查!

作者的关系网络图

#通过build_network函数可以查看作者的关系网络,并且可以展示与某位作者相关的网络关系
author_network<-build_network(object=package_db,perspective = "author")
plot(author_network,author="JJ Allaire",exact=FALSE)

在这里插入图片描述
这个图是可以交互操作的,如何一个作者与其他人合作关系密切肯定就是大神,他的包可信度必然就高。

packages的关系依赖图

#构建cranly包的依赖关系树
xts_tree=build_dependence_tree(package_network,"ggplot2")
plot(xts_tree)

在这里插入图片描述

重点!寻找需要的R包

##package_with()通过预先设定关键词寻找相关R包,比如寻找带有“Bayes”
##or "MCMC"关键词的R包
Bayesian_packages=package_with(package_network,name=c("xls","trick"))
plot(package_network,package=Bayesian_packages,legend = F)

在这里插入图片描述

对Rpackages的另一种查找方法–packagefinder::findPackage()

根据关键词在CRAN上搜索packages的信息

p_load(tibble)
p_load(tidyverse)
# packagefinder主要功能是帮助R使用者找到能够解决燃眉之急的R包
#packagefinder::findPackage() 支持通过关键词搜素CRAN上所有R包的元数据。
pt=as_tibble(findPackage("permutation test"))
pt
# # A tibble: 15 x 4
# SCORE NAME          DESC_SHORT                               GO   
# <dbl> <chr>         <chr>                                    <fct>
#   1 100   wPerm         Permutation Tests                        15198
# 2  65.3 lmPerm        Permutation Tests for Linear Models      7060 
# 3  63.5 perm          Exact or Asymptotic permutation tests    9618 
# 4  55.5 flip          Multivariate Permutation Tests           4324 
# 5  53.7 cpt           Classification Permutation Test          2376 

获取每个包每月的下载量

# dlstats::cran_stats()将包名称向量作为输入,查询RStudio下载日志,并返回一个数据框,列出每个包的月份下载次数
pt_downloads <- cran_stats(pt_pkg$NAME)
#        start        end    downloads package
# 58  2015-11-01 2015-11-30       190   wPerm
# 65  2015-12-01 2015-12-31       173   wPerm
# 72  2016-01-01 2016-01-31       236   wPerm
# 79  2016-02-01 2016-02-29       180   wPerm
# 87  2016-03-01 2016-03-31       129   wPerm
# 96  2016-04-01 2016-04-30       115   wPerm
# 105 2016-05-01 2016-05-31       113   wPerm

列出了每个包在其生命周期内的总下载量

top_downloads <- pt_downloads %>% group_by(package) %>%
  summarize(downloads = sum(downloads)) %>%
  arrange(desc(downloads)) 
head(top_downloads,10)
# # A tibble: 10 x 2
# package        downloads
# <fct>              <int>
#   1 exactRankTests    333581
# 2 perm              126508
# 3 lmPerm             34431
# 4 flip               23641
# 5 jmuOutlier         18365
# 6 GlobalDeviance     16994
# 7 AUtests            14718
# 8 treeperm           11437
# 9 cpt                11211
# 10 wPerm              10513

可视化package下载情况

top_pkgs <- pt_downloads %>% filter(package %in% top_downloads$package[1:3]) 
ggplot(top_pkgs, aes(end, downloads, group=package, color=package)) +  geom_line() + geom_point(aes(shape=package))

在这里插入图片描述
从中可以看到,实现置换检验最常用的packages,如果学习当然就使用最常用的嘛。

查找R包最简单的方法,rseek搜索引擎

https://www.rdocumentation.org/

在这里插入图片描述
为什么把最简单的方法放最后呢?因为,不放最后,高级的方法就没人看了。

参考来源

https://mp.weixin.qq.com/s/ONulutWR3a1JdPLdFq1d3w
https://mp.weixin.qq.com/s/ah9F7_0hgE3dqXsZDqljtQ

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
R语言可以用于进行Meta分析。Meta分析是一种根据明确的搜索策略、选择筛选文献标准、采用严格的评价方法,对来源不同的研究成果进行收集、合并及定量统计分析方法。在R语言,有许多用于进行Meta分析的包,比如meta、metafor、dmetar等。这些包提供了完整有效的数据处理、统计分析与保存机制,可以直接对数据进行分析和显示。R语言的命令格式简单,结果可读性强,非常适合进行Meta分析的操作。通过使用这些包,你可以进行Meta整合分析、异质性检验、不确定性分析等。 以meta包为例,你可以使用install.packages("meta")命令来安装meta包,然后使用library(meta)命令来加载这个包。接下来,你可以使用metagen函数来进行Meta分析,指定需要分析的效应量和标准误差,以及其他参数设置。最后,你可以使用summary函数来查看Meta分析的结果。 需要注意的是,在进行Meta分析时,需要进行严格的方法选择和结果解释,以确保结果的可靠性和有效性。同时,还可以结合机器学习等方法,进行Meta分析在文献大数据的延伸应用。 总结起来,R语言提供了丰富的工具包和函数,可以进行Meta分析及其相关的操作和分析。使用R语言进行Meta分析可以帮助研究人员从不同研究汇总和综合数据,得出更加准确和全面的结论。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [基于R语言的Meta分析【全流程、不确定性分析方法与Meta机器学习](https://blog.csdn.net/weixin_46433038/article/details/125058741)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [用R进行meta分析(meta包)](https://blog.csdn.net/weixin_58566962/article/details/125605411)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值