R数据科学第五章DEA-day1

1.简介

探索性数据分析(exploratory data analysis,EDA),具
有以下作用:
(1) 对数据提出问题。
(2) 对数据进行可视化、转换和建模,进而找出问题的答案。
(3) 使用上一个步骤的结果来精炼问题,并提出新问题。

准备工作:

library(tidyverse)

2.问题

(1) 变量本身会发生何种变动?
(2) 不同变量之间会发生何种相关变动?

3.变动

变动是每次测量时数据值的变化趋势。

3.1对分布进行可视化表示
  • 分类变量用条形图
ggplot(data = diamonds) +
geom_bar(mapping = aes(x = cut))

Y轴等于数量,可以用diamonds %>% count(cut)来显示。

#复习一下如何查看每列的非重复值
distinct(diamonds,cut)
#如何查看每个非重复值出现的次数
count(diamonds,cut)
  • 连续变量用直方图
ggplot(data = diamonds) +
geom_histogram(mapping = aes(x = carat), binwidth = 0.5)
注:binwidth是定义等宽分箱的宽度,也可以用bins定义分箱数。binwidth不是定义作图的条形宽度,而是x坐标的等宽值,按0.5进行划分数据。直方图对x 轴进行等宽分箱,然后使用条形的高度来表示落入每个分箱的观测的数量,cut_width() 函数的组合来手动计算结果.count(cut_width(carat, 0.5))
cut函数用法

cut函数将一列点划分到各自的区间里。
如有1000个学生的考试分数(满分100),想要按照分数评等级,
如果是均匀划分(90-100,80-90,70-80,...),直接做除法取商就行,
但如果划分不均匀(90-100,75-90,60-75,0-60), cut函数将会派上用场。

geom_freqploy() 可以执行和geom_histogram() 同样的计算过程,
但前者不使用条形来显示计数,而是使用折线。叠加的折线远比叠加的条形更容易理解.

3.2 典型值

直方图或条形图较高的读数,表示常见值。聚集成簇成为子组。

3.3 异常值 : coord_cartesian() 函数

coord_cartesian() 函数将y 轴靠近0 的部分放大,coord_cartesian() 函数中有一个用于放大x 轴的xlim() 参数。ggplot2 中也有功能稍有区别的xlim() 和ylim() 函数:它们会忽略溢出坐标轴范围的那些数据。

ggplot(diamonds) +
geom_histogram(mapping = aes(x = y), binwidth = 0.5) +
coord_cartesian(ylim = c(0, 50))

可以改成xlim,是把x轴定义为0-50之间,看能否发现异常值。
也可以通过下面方法找出来。

unusual <- diamonds %>%
filter(y < 3 | y > 20) %>%
arrange(y)
unusual

也可以选择显示某些变量。

filter(diamonds,y < 3 | y > 20) %>% 
  select(price, x, y, z) %>%
  arrange(y)

总结

geom_bar条形图
count()计数
distinct()非重复值
geom_histogram直方图
binwidth x轴的划分宽度,计数时使用cut_width()
geom_freqploy() 重叠折线图
coord_cartesian()结合ylim()和xlim()可以放大y轴和x轴。

你可能感兴趣的:(R数据科学第五章DEA-day1)