R 编程语言中最常用的 60 个 R 包

一则或许对你有用的小广告

欢迎加入小哈的星球 ,你将获得:专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡/ 赠书活动

目前,正在 星球 内带小伙伴们做第一个项目:全栈前后端分离博客项目,采用技术栈 Spring Boot + Mybatis Plus + Vue 3.x + Vite 4手把手,前端 + 后端全栈开发,从 0 到 1 讲解每个功能点开发步骤,1v1 答疑,陪伴式直到项目上线,目前已更新了 204 小节,累计 32w+ 字,讲解图:1416 张,还在持续爆肝中,后续还会上新更多项目,目标是将 Java 领域典型的项目都整上,如秒杀系统、在线商城、IM 即时通讯、权限管理等等,已有 870+ 小伙伴加入,欢迎点击围观

本文提供了 60 个最常用的 R 包 的完整列表,这些包有助于在处理数据科学/分析项目时实现以下一些目标:

  • 预测建模
  • 数据处理/操作
  • 可视化
  • 一体化
  • Hadoop
  • 图形用户界面
  • 数据库


60 个最常用的 R 包


以下是 60 个左右的 R 包的列表,它们有助于在创建预测模型时处理不同的方面:


  • 预测建模 :表示有助于处理各种不同预测模型(线性/多元/逻辑回归模型、SVM、神经网络等)的包
    • 插入符号 :代表分类和回归训练。提供一组函数,可用于在处理分类和回归问题时执行以下某些操作。取决于包的数量并适当地(按需)加载这些包以实现上述目标。
      • 数据处理(拆分)
      • 特征选择
      • 基于重采样评估模型调整参数
      • 预测变量重要性估计
      • 从训练集中估计模型性能
    • lars :使用最小角度回归算法,它提供了产生最合适的预测变量和相关系数的估计的方法和方法。
    • gbm :代表广义提升回归模型。基于决策树算法,GBM 包提供了解决回归和分类相关问题的方法。它适应提升,其中多个弱模型通过算法组合以创建更好的模型。
    • zoo :提供处理规则,尤其是不规则时间序列问题的方法
    • glmnet :提供线性、多项式、逻辑和泊松回归模型和 cox 模型的方法。它基于套索和弹性网正则化技术,用于选择最合适的参数或系数,从而消除相关系数和冗余系数。
    • lme4 :提供拟合和分析线性混合模型、广义线性混合模型和非线性混合模型的功能。混合模型通常被定义为同时包含固定效应和随机效应的统计模型,因此称为混合效应。简单地说,线性回归模型取决于一组预测变量(具有固定效应)和一个包含一个或多个随机效应的全包误差项。在线性混合模型中,该误差项被进一步扩展,并包含一个或多个具有随机效应的项。
    • forecast :提供显示和分析单变量时间序列模型的方法
    • quantmod :一个快速原型制作环境,量化交易员可以在其中快速、干净地探索和构建交易模型。换句话说,它有助于交易、构建和分析量化金融交易策略。
    • randomForest :提供处理分类和回归问题的方法,基于随机森林算法,该算法指示在随机变量样本上创建大量引导树,使用该森林中的所有这些树对特定案例进行分类,并决定最终结果基于平均或多数表决技术,这取决于处理的是回归问题还是分类问题。
    • e1071 :提供处理回归和分类问题的方法。以下算法作为函数的一部分包含在内:
      • 支持向量机 (SVM)
      • 朴素贝叶斯分类器
      • 袋装聚类
      • 短时傅里叶变换
    • gam :代表广义加性模型。提供用于处理广义加法模型的函数。
    • nnet :提供使用前馈神经网络和多项对数线性模型的方法。
    • stats :这是 R 基本安装附带的基本包。
  • Data Handling/Manipulation :表示用于数据处理、操作操作的包。
    • dplyr :最好的数据操作工具之一,dplyr 提供了对数据框和数据库执行不同数据操作的方法
    • reshape2 :提供方法 melt 和 cast,将宽数据格式转换为长数据格式,反之亦然。以下是更多详细信息:- Melt:将宽格式数据转换为长格式数据- Cast:将长格式数据转换为宽格式数据
    • sqldf :为数据框提供 SQL 选择。对于希望使用 R 的 RDBMS 专业人员来说,这是一个很好的资源。
    • lubridate :提供日期和时间操作的方法
    • stringr :提供字符串操作的方法。方法包括与长度、替换、提取、匹配、顺序等相关的操作
    • XML :提供读取和创建 XML(和 HTML)文档(包括 DTD)的方法,包括本地文档和可通过 HTTP 或 FTP 访问的文档
    • data.table :提供更快聚合大型数据集、更快添加/更新/删除数据列、列出列、从文件读取数据的功能
    • caTools :提供用于数据处理的实用函数,包括读取/写入二进制文件(如 GIF/ENVI、base64 编码器/解码器等)等活动。
    • 异常值 :提供检测异常值的方法/测试。
    • extremevalues :提供检测数据集中异常值的方法。还提供了显示绘图的 GUI 工具。
    • Hmisc :提供数据分析、实用程序操作、字符串操作、计算样本大小和功效、变量聚类等多种功能。
    • RevoScaleR :提供处理大型数据集的方法。包括读取和操作大型数据集、清理它们以及为使用 R 进行统计分析做准备的操作
    • tidyr :提供整理杂乱数据的功能。以下是三个关键函数:
      • 收集
      • 分离
      • 传播
    • foreach :提供用于重复执行 R 代码的循环结构。 foreach 包的 USP 支持在同一系统上的多个内核或集群中的多个节点上并行执行重复操作。
    • sweave :提供用于混合文本和 R 代码以生成动态报告的框架,以便在数据或分析发生变化时自动更新报告。
    • rggobi :为 GGobi 提供命令行界面,GGobi 是一个交互式动态图形包。
  • 可视化 :表示用于可视化的包。
    • ggplot2 :数据可视化的最佳工具之一,ggplot2 可用于使用来自不同数据源的数据逐层创建图。
    • knitr :Sweave 的替代工具,Knitr 提供动态报告生成方法。
    • igraph :一种可视化工具,iGraph 提供了处理常规和大型图形的方法。
    • manipulate :在 R studio 中提供交互式绘图功能
    • RColorBrewer :提供为专题图创建调色板的方法
    • lattice :一个高级数据可视化包,强调多变量数据。据说是改进基础 R 图形。
    • rcharts :使用熟悉的格子样式绘图界面从 R 创建、自定义和发布 javascript 可视化的包
    • googleVis :提供与 Google 图表 API 交互并基于数据框创建交互式图表的方法
    • colorspace :提供在 R 中创建和使用 HCL(Hue-Chroma-Luminance)包的方法
    • scales :提供以下一些方法:
      • 将数据映射到美学
      • 自动确定轴和图例的中断和标签
    • playwith :用于编辑 R 绘图并与之交互的 GUI
  • Hadoop :表示有助于连接和处理来自 Hadoop 生态系统的数据的包。
    • RHadoop :五个 R 包的集合,允许用户使用 Hadoop 管理和分析数据。以下是这五个包:
      • rmr:map reduce 操作的函数
      • rhdfs:HDFS文件管理功能
      • rhbase:HBase 数据库管理函数
      • ravro:读写 AVRO 格式文件的函数
      • plyrmr:plyr 的功能,例如结构化数据的数据处理。
    • RImpala :提供将 Cloudera Impala 连接到 R 的方法,从而能够从 R 查询驻留在 HDFS 和 Apache Hbase 中的数据,这些数据可以使用 R 函数进一步处理为 R 对象。
  • Integration :表示实现某些目标的包,例如连接流行的社交网络,如 Twitter、Facebook 等。另外,找到 PMML 包的提及,它用于以 XML 格式表示数据挖掘模型,以便可以共享这些模型不同统计软件包之间。
    • twitteR :提供到 Twitter web API 的接口
    • Rfacebook :提供一系列允许访问 Facebook API 的功能,从而获取以下一些信息:
      • 用户
      • 帖子
      • 使用特定关键字的状态更新
    • PMML :代表预测模型标记语言。作为一种基于 XML 的语言,PMML 提供了表示数据挖掘模型的开放标准。它有助于以 XML 格式导出预测和描述模型,这些模型可以在不同的 PMML 兼容应用程序之间共享。
    • foreign : 提供可用于从一些最常用的统计软件包(如 SAS、SPSS、Stata 等)导入数据文件的功能。
  • 应用程序编程
    • shiny :帮助使用 R 构建响应式和交互式 Web 应用程序
    • slidify :提供使用 R markdown 创建、自定义和共享 HTML5 文档的方法
    • proto :促进 R 中的原型式编程。简单来说,原型编程是一种面向对象的编程,其中没有类。使用 proto 包,可以在没有类的情况下组织数据和过程。
    • rJava :低级 R 到 Java 接口。
  • 图形用户界面
    • rattle :用于数据挖掘的 GUI。帮助以简单的方式执行以下一些操作:
      • 从 CSV 文件或数据库加载数据
      • 探索性数据分析(转换和探索)
      • 构建和评估模型
      • 将模型导出为 PMML
    • Rcmdr :适用于初学者/新手,Rcmdr 包提供了 GUI,可以访问一系列常用的 R 命令。
  • 数据库
    • RMySQL :提供从 MySQL 数据库访问数据的方法。
    • RPostGreSQL :提供从 PostGreSQL 数据库访问数据的方法。该软件包提供 DBI 兼容的驱动程序来访问 PostGreSQL 数据库系统。
    • Rmongo :提供允许访问 MongoDB 数据库的方法。
    • Rsqlite :在 R 中嵌入 SQLite 数据库。提供使用此数据库的方法。
  • 各种各样的
    • digest :提供实现以下某些目标的方法:
      • 为任意对象创建哈希函数摘要(digest)
      • 创建 AES 分组密码对象 (AES)
      • 计算基于散列的消息认证码 (hmac)
    • DmwR :代表使用 R 进行数据挖掘。包括随书附送的函数和数据,“使用 R 进行数据挖掘,通过案例研究学习”
    • fortunes : 包含来自不同来源的整套幽默语录和评论
    • magrittr :为链接命令提供前向管道运算符,这实际上意味着运算符会将值转发到下一个函数。
    • multicore :提供在具有多核或 CPU 的机器上并行执行 R 代码的功能
    • doParallel :由 Revolution Analytics 维护,doParallel 使用 R 2.14.0 及更高版本的并行包为 foreach %dopar% 函数提供并行后端。