R 语言是进行数据分析和统计计算非常流行的编程语言。tidyr 是 R 语言中用于数据清洗和整理的包,它可以帮助我们将数据整理成适合分析的格式。以下是关于使用 tidyr 进行数据清洗的教程。
简介
tidyr 包提供了几个核心函数,如 gather()
、spread()
、pivot_longer()
和 pivot_wider()
,这些函数可以帮助我们轻松地将数据转换成宽格式或长格式。
常用函数
gather()
gather()
函数可以将宽格式数据转换为长格式。它将指定的列名收集到一个新的列中,并将相应的值移动到另一个列中。
library(tidyr)
data(mpg)
gather(mpg, Year, Hwy, Cty)
spread()
spread()
函数与 gather()
相反,它可以将长格式数据转换为宽格式。
spread(mpg, Year, Cty, Hwy)
pivot_longer()
pivot_longer()
函数可以用来将多个列转换为单个列,并创建一个新列来表示每个列的名称。
pivot_longer(mpg, cols = c(Hwy, Cty), names_to = "Type", values_to = "Value")
pivot_wider()
pivot_wider()
函数与 pivot_longer()
相反,它可以将单个列转换为多个列。
pivot_wider(mpg, names_from = "Type", values_from = "Value")
实战案例
假设我们有一个宽格式的数据集,其中包含了汽车的年份、城市和高速公路的油耗。
data(mpg)
我们可以使用 gather()
函数将数据转换为长格式:
gather(mpg, Year, Cty, Hwy)
现在,我们可以使用 pivot_longer()
函数将年份、城市和高速公路油耗的列转换为单个列。
pivot_longer(mpg, cols = c(Hwy, Cty), names_to = "Type", values_to = "Value")
现在,我们的数据已经转换成长格式,可以方便地进行进一步的分析。
扩展阅读
想要了解更多关于 tidyr 包的信息,可以访问 tidyr 包的官方文档。
[center]
[center]