查看原文
其他

R数据科学|5.5.1 内容介绍

我才是赵西西 庄闪闪的R语言手册 2023-05-11

5.5.1 相关变动

如果变动描述的是一个变量内部的行为,那么相关变动描述的就是多个变量之间的行为。相关变动是两个或多个变量以相关的方式共同变化所表现出的趋势。查看相关变动的最好 方式是将两个或多个变量间的关系以可视化的方式表现出来。如何进行这种可视化表示同 样取决于相关变量的类型。

5.5.1 分类变量与连续变量

我们经常需要探索连续变量的分布,按分类变量的分组显示连续变量分布的常用的两种方式是:

  1. 改变 y 轴的显示内容,不再显示计数,而是显示密度。密度是对计数的标准化,这样每个频率多边形下边的面积都是 1:
 data = diamonds,
 mapping = aes(x = price, y = ..density..)
 ) +
 geom_freqpoly(mapping = aes(color = cut), binwidth = 500)
  1. 使用箱线图。箱线图是对变量值分布的一种简单可视化表示,每张箱线图都包括以下内容:
  • 一个长方形箱子,下面的边表示分布的第 25 个百分位数,上面的边表示分布的第 75 个百分位数,上下两边的距离称为四分位距。箱子的中部有一条横线,表示分布的中位数,也就是分布的第 50 个百分位数。这三条线可以表示分布的分散情况,还可以帮助我们明确数据是关于中位数对称的,还是偏向某一侧。
  • 圆点表示落在箱子上下两边 1.5 倍四分位距外的观测,这些离群点就是异常值,因此需要单独绘出。
  • 从箱子上下两边延伸出的直线(或称为须)可以到达分布中最远的非离群点处。
ggplot(data = mpg, mapping = aes(x = class, y = hwy)) +
 geom_boxplot()

cut 是一个有序因子:“一般”不如“较好”、“较好”不如“很好”,以此类推。因为很多分 类变量并没有这种内在的顺序,所以有时需要对其重新排序来绘制信息更丰富的图形。重新排序的其中一种方法是使用 reorder() 函数。
例如,我们看一下 mpg 数据集中的 class 变量。你可能很想知道公路里程因汽车类别的不同会有怎样的变化,可以基于 hwy 值的中位数对 class 进行重新排序:

ggplot(data = mpg, mapping = aes(x = class, y = hwy)) +
 geom_boxplot(mapping = aes(
 x = reorder(class, hwy, FUN = median),
 y = hwy
 ))

如果变量名很长,那么将图形旋转 90 度效果会更好一些。你可以通过coord_flip()函数:

ggplot(data = mpg) +
 geom_boxplot(
 mapping = aes(
 x = reorder(class, hwy, FUN = median),
 y = hwy
 )
 ) +
 coord_flip()
nycflights13::flights %>%
 mutate(
 cancelled = is.na(dep_time),
 sched_hour = sched_dep_time %/% 100,
 sched_min = sched_dep_time %% 100,
 sched_dep_time = sched_hour + sched_min / 60
 ) %>%
 ggplot(mapping = aes(sched_dep_time)) +
 geom_freqpoly(
mapping = aes(color = cancelled),
binwidth = 1/4
 )




往期推荐


R数据科学|5.4内容介绍及习题解答

R数据科学|5.3内容介绍

R数据科学|5.3课后习题解答

R数据科学|3.7内容介绍及习题解答

R数据科学|3.6内容介绍

R数据科学|3.6习题解答


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存