当前位置: 首页 > news >正文

R语言从入门到精通Day3之【包的使用】

包的使用

本节从什么是R包、R包的下载、R包的使用、包的实践与管理四个方面对R包的使用进行介绍。

R的庞大生态系统覆盖了从数据整理、统计分析、机器学习、可视化到特定领域应用(如金融、生物信息、社会科学、地理空间分析等)的几乎所有方面。截止目前,官方收录的R包已有20000+,通过获取R包,可以站在巨人的肩膀上,以最简单的方式快速完成自己的任务。
欢迎大家在评论区留言或私信,交流学习心得或学习R的过程中遇到的问题。感谢大家的支持和关注,您的支持是我创作的最大动力。

目录

    • 包的使用
  • 1.什么是R包?
  • 2.包的安装
    • 2.1 从 CRAN 安装 (最常用)
    • 2.2 从 Bioconductor 安装
    • 2.3 从 GitHub 安装 (安装开发版)
  • 3.包的使用
    • 3.1 包的加载
    • 3.2 包的使用
    • 3.3 查看包的信息和帮助
    • 3.4 包的更新和卸载
  • 4.包的实践和管理
    • 4.1 在脚本开头加载所有需要的包
    • 4.2 使用 pacman 包进行高效的包管理
    • 4.3 项目依赖管理:renv()

1.什么是R包?

R 包是 R 函数、数据、预编译代码的集合,以一种标准化的方式打包。你可以把它理解为一个扩展插件,分基础R包和拓展R包。
基础 R包: 安装 R 时就自带的包,提供了最基本的功能,如 mean(), plot() 等。
扩展包: 由全球的 R 用户和统计学家开发,用于实现特定的功能,例如数据清洗 (dplyr)、绘图 (ggplot2)、机器学习 (tidymodels) 等。这正是 R 生态系统如此强大的原因。
R 有一个官方的发布平台 CRAN,以及其他的如 Bioconductor (生物信息学) 和 GitHub (开发版本)。

2.包的安装

2.1 从 CRAN 安装 (最常用)

该方法是最常用的方法,代码如下:

# 安装单个包
install.packages("dplyr")# 一次性安装多个包
install.packages(c("ggplot2", "tidyr", "readr"))

2.2 从 Bioconductor 安装

Bioconductor 的包有自己的一套安装方法。

# 首先安装 BiocManager 包(如果还没安装的话)
if (!require("BiocManager", quietly = TRUE))install.packages("BiocManager")# 使用 BiocManager 安装 Bioconductor 的包
BiocManager::install("DESeq2")

2.3 从 GitHub 安装 (安装开发版)

有时开发者最新的功能还在 GitHub 上,未发布到 CRAN,可以使用 devtools 包来安装。

# 首先安装 devtools
install.packages("devtools")# 从 GitHub 安装
devtools::install_github("tidyverse/dplyr")

3.包的使用

3.1 包的加载

安装包只是将包的文件下载到你的电脑上。要使用包里的函数,你需要加载它到当前的工作环境中。

# 使用 library() 函数
library(dplyr)# 或者使用 require() 函数
require(ggplot2)

library() 和 require() 的主要区别在于,如果包不存在,library() 会报错并停止执行,而 require() 会返回 FALSE 并发出警告,但代码会继续执行。因此,在函数内部通常使用 require()。

注意: 安装一个包只需要做一次,但每次开启新的 R 会话并想使用它时,都需要重新加载。

3.2 包的使用

加载包后,你可以直接使用包中的函数,以dplyr包为例。

library(dplyr)
# 使用 dplyr 中的 filter 函数
filtered_data <- filter(mtcars, mpg > 10) #mtcars是一个内置数据集

【注意】冲突问题
当两个包有同名函数时,后加载的包会“掩盖”先加载的包的函数。你会看到这样的提示:
The following object is masked from ‘package:stats’: filter
这时,为了明确指定使用哪个包的函数,可以使用 :: 操作符。

# 明确指定使用 dplyr 的 filter 函数
result1 <- dplyr::filter(mtcars, mpg > 20)# 明确指定使用 stats 的 filter 函数 (时间序列的线性滤波)
result2 <- stats::filter(mtcars$mpg, rep(1, 3))

这是一种很好的编程习惯,可以使代码意图更清晰,避免潜在的冲突。

3.3 查看包的信息和帮助

R提供了R包的使用介绍文档

# 查看已安装的所有包
library()# 查看当前已加载的包
search()# 查看某个包的帮助文档首页
help(package = "dplyr")# 查看包中某个特定函数的帮助
?filter
help("filter")# 查看包的版本
packageVersion("dplyr")# 列出包中的所有函数和数据
ls("package:dplyr")

3.4 包的更新和卸载

# 检查所有已安装包的更新
update.packages()# 卸载某个包
remove.packages("dplyr")# 查看包安装路径
.libPaths()

4.包的实践和管理

4.1 在脚本开头加载所有需要的包

这是一个好习惯,可以让别人(或未来的你)一眼就知道运行这个脚本需要哪些包。

# 脚本开头
library(ggplot2)
library(dplyr)
library(readr)

4.2 使用 pacman 包进行高效的包管理

pacman 包提供了一个更便捷的工具来管理你的 R 包。

# 安装 pacman
install.packages("pacman")# 使用 p_load 来安装(如果未安装)并加载包
pacman::p_load(dplyr, ggplot2, tidyr)# 检查一个包是否已安装
pacman::p_isinstalled(dplyr)

4.3 项目依赖管理:renv()

对于复杂的项目,为了确保其可重现性(在不同电脑或不同时间都能运行),推荐使用 renv 包。它可以为每个项目创建一个独立的 R 环境,记录下项目所使用的所有包的特定版本。

# 安装 renv
install.packages("renv")# 在你的项目目录中
renv::init()    # 初始化一个全新的项目本地环境# ... 进行你的项目工作,安装各种包 ...
renv::snapshot() # 将当前项目的包状态保存到 renv.lock 文件中
当别人拿到你的项目和 renv.lock 文件时,他们只需运行 renv::restore() 就可以安装完全相同的包版本,完美复现你的工作环境。

大家在使用的时候遇到任何问题欢迎留言,您的支持是我创作的最大动力。

http://www.dtcms.com/a/418428.html

相关文章:

  • rocr专栏介绍
  • 济南网站建设 推搜点搜索优化的培训免费咨询
  • pc网站建设哪个好重庆seo网站运营
  • 沙箱1111111
  • 2、order-service 企业级代码目录结构规范
  • C# MVVM模式和Qt中MVC模式的比较
  • html mip 网站阿里云装wordpress慢
  • 权限校验是否应该在 Spring Cloud Gateway 中进行?
  • MariaDB数据库管理
  • 21.mariadb 数据库
  • GFM100 地线连续性检测监控器:破解工业接地痛点,筑牢电力系统安全防线
  • 2、Nginx 与 Spring Cloud Gateway 详细对比:定位、场景与分工
  • 玳瑁的嵌入式日记---0928(ARM--I2C)
  • 微服务故障排查
  • 离散时间马尔可夫链
  • 怎么做网站快照网站域名跳转代码html
  • 基于 OpenCV + 深度学习的实时人脸检测与年龄性别识别系统
  • c++ opencv 复现Fiji 配对拼接算法中的加权融合
  • 中秋国庆双节餐饮零售破局!Deepoc 具身模型外拓板打造 “假日智能运营新范式
  • 瑞安网站建设电话百度商桥接入网站
  • 嵌入式硬件——I.MX6ULL EPIT(增强型周期中断定时器)
  • 降低测试成本缩短测试周期 | 车辆OBD数据采集方案
  • 一级消防工程师考试时间新闻类网站怎么做seo
  • window显示驱动开发—确定显示适配器上的 VidPN 支持
  • Kafka05-入门-尚硅谷
  • Visual Studio 2022
  • 【不背八股】19.GPT-2:不再微调,聚焦零样本
  • 5、焊接质量检验及缺陷分析
  • 【AI】大模型的分析力横评:一次“伪异步”排查后的真实思考
  • 养老院服务质量建设专项网站广州seo关键词优化外包