ggplot2读书笔记13:第十章 数据变换

本篇博客介绍了R语言ggplot2包中的数据变换方法,包括过滤数据集、创建新变量、分组和摘要统计。通过实例展示了如何使用filter函数筛选数据,使用mutate创建新变量,以及如何利用group_by和summarise进行分组统计。此外,还提及了数据转换管道的概念,使代码更简洁易读。
摘要由CSDN通过智能技术生成

Data Transformation

10.1 简介

通常情况下,除了整理数据之外,我们还需要把原始数据做一些数据变换(聚合等),这时就要使用到dplyr包。

本章中我们学习dplyr中四个重要的函数的用法:

  • filter()
  • mutate()
  • group_by()
  • summarise()

这些动词都是用相同的方式工作:将数据框作为第一个参数,然后返回一个修改后的数据框

本章中还会用到%>%创建数据转换管道,%>%和ggplot2中的+有相似的作用。

10.2 过滤数据集(Filter Observations)

有时我们采用的数据分析策略是由小见大,从一个观测单位开始,然后将结论推广到整个数据集;

有时我们只想集中观测数据集中的一部分,这是就要取它的子集来分析;

有时我们就是想单独检查、剔除异常值;

这时可以使用filter()函数,按给定的逻辑判断筛选出符合要求的子数据集。

拿钻石数据集来举个栗子:

> diamonds
# A tibble: 53,940 x 10
   carat cut       color clarity depth table price     x     y     z
   <dbl> <ord>     <ord> <ord>   <dbl> <dbl> <int> <dbl> <dbl> <dbl>
 1 0.230 Ideal     E     SI2      61.5  55.0   326  3.95  3.98  2.43
 2 0.210 Premium   E     SI1      59.8  61.0   326  3.89  3.84  2.31
 3 0.230 Good      E     VS1      56.9  65.0   327  4.05  4.07  2.31
 4 0.290 Premium   I     VS2      62.4  58.0   334  4.20  4.23  2.63
 5 0.310 Good      J     SI2      63.3  58.0   335  4.34  4.35  2.75
 6 0.240 Very Good J     VVS2     62.8  57.0   336  3.94  3.96  2.48
 7 0.240 Very Good I     VVS1     62.3  57.0   336  3.95  3.98  2.47
 8 0.260 Very Good H     SI1      61.9  55.0   337  4.07  4.11  2.53
 9 0.220 Fair      E     VS2      65.1  61.0   337  3.87  3.78  2.49
10 0.230 Very Good H     VS1      59.4  61.0   338  4.00  4.05  2.39
# ... with 53,930 more rows

用变量x、y(钻石俯视图的长度、宽度)做二维热图:

ggplot(diamonds, aes(x, y)) +
geom_bin2d()

image

这个数据集中有50000+个数据点,大多集中在对角线上,但可以看到有一些异常点,我们可以使用filter()函数来快速查找异常值:

> filter(diamonds, x == 0 | y == 0)
# A tibble: 8 x 10
  carat cut       color clarity depth table price     x     y     z
  <dbl> <ord>     <ord> <ord>   <dbl> <dbl> <int> <dbl> <dbl> <dbl>
1 1.07  Ideal     F     SI2      61.6  56.0  4954     0  6.62     0
2 1.00  Very Good H     VS2      63.3  53.0  5
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值