Tidyverse tidyr 开源项目教程
tidyr Tidy Messy Data 项目地址: https://gitcode.com/gh_mirrors/ti/tidyr
1. 项目介绍
tidyr
是 tidyverse
的一部分,它致力于帮助用户创建整洁的数据。整洁的数据指的是满足以下条件的数据:
- 每个变量是一列,每列是一个变量。
- 每个观察是一个行,每行是一个观察。
- 每个值是一个单元格,每个单元格是单个值。
使用 tidyr
可以确保数据以标准化的方式存储,使得在使用 tidyverse
的其他工具时更加便捷。如果数据保持整洁,您将能更多地专注于分析,而不是与工具斗争。了解更多关于整洁数据的详情可以在官方文档中的 "tidy-data" 小册子中找到。
2. 项目快速启动
首先,确保安装了 R 语言环境。然后,可以通过以下方式安装 tidyr
:
# 安装整个 tidyverse
install.packages("tidyverse")
# 或者只安装 tidyr
install.packages("tidyr")
# 或者从 GitHub 安装开发版本
install.packages("pak")
pak::pak("tidyverse/tidyr")
安装完成后,可以在 R 中加载 tidyr
:
library(tidyr)
3. 应用案例和最佳实践
以下是一些使用 tidyr
的常见案例:
转换数据格式
使用 pivot_longer()
和 pivot_wider()
函数来转换数据从宽格式到长格式或反之。
# 假设有以下数据框
df <- data.frame(
id = c(1, 1, 2, 2),
year = c(2018, 2019, 2018, 2019),
sales = c(100, 150, 200, 250)
)
# 转换为宽格式
df_wide <- df %>%
pivot_wider(names_from = year, values_from = sales, values_fill = list(sales = 0))
# 转换为长格式
df_long <- df %>%
pivot_longer(cols = starts_with("sales"), names_to = "year", values_to = "sales")
清理缺失值
使用 fill()
来填充缺失值,或者使用 drop_na()
来删除包含缺失值的行。
# 填充缺失值
df_filled <- df %>%
fill(sales)
# 删除包含缺失值的行
df_clean <- df %>%
drop_na(sales)
分割和合并列
使用 separate()
和 unite()
来处理字符列的分割和合并。
# 分割列
df_split <- df %>%
separate(year, into = c("year", "month"), sep = "-")
# 合并列
df_united <- df %>%
unite("year_month", year, month, sep = "-")
4. 典型生态项目
tidyr
通常与 tidyverse
中的其他包一起使用,如 dplyr
、ggplot2
等,以下是一些典型的生态项目:
dplyr
:进行数据操作和分析。ggplot2
:用于数据可视化。readr
:用于读取和写入数据文件。
这些工具共同构成了一个强大的数据处理和分析生态系统,可以满足大多数数据处理需求。
tidyr Tidy Messy Data 项目地址: https://gitcode.com/gh_mirrors/ti/tidyr
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考