看到群里一个个R语言大神,让我觉得自己该去好好提高自己的R功底了,所以接下来的一段时间,我主要和大家一起分享学习这本R语言书,来和大家提高R语言功底,这本书是R大神Hadley Wickham的著作,旨在给大家提供如何用R语言进行数据分析,算是一个基础入门书。
本书一共5大部分,30个小节,我将用两到三个月的时间和大家分享,数据科学是一个巨大的领域,我们不可能通过阅读一本书来掌握它。这本书的目的是给我们一个坚实的基础。在一个典型的数据科学项目中所需要的工具模型是这样的:
就是数据导入-数据整理-数据转置-建立模型-数据可视化-交流的一个过程
安装本书所需要的工具包和数据包
install.packages("tidyverse")
install.packages(c("nycflights13", "gapminder", "Lahman"))
install.packages("ggplot2")
第二章第三讲数据可视化
--- “The simple graph has brought more information to the data analyst’s mind than any other device.” — John Tukey
本书中数据可视化,主要是基于ggplot2 首先给大家提供一个ggplot2绘图公式:
ggplot(data = <DATA>) + <GEOM_FUNCTION>(mapping = aes(<MAPPINGS>))
第一部分主要是存放数据,第二部分才是几何形状映射,大部分情况下,可以省略掉前面的一些参数,第二个必须输入x,y坐标。
ggplot(data) + geom_function(aes(x= ,y= ,color= ,shape= ,alpha= ))
ggplot(data) + geom_function(aes(x= ,y= ),color= ,shape= ,alpha= )
仔细观察,这两种写法的区别,区别就是第一种写法如果颜色变量对应的是分类变量的话,每一类会有不同的颜色,形状等,第二种方法则是进行了全局变量设置,是对所有变量设置同样的颜色等。
分面
就是数据按照某一个类别分别建立不同的画布展示
用一个变量展示的话 facet_wrap()
facet_wrap()
ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy)) + facet_wrap(~ class, nrow = 2)
传递给facet_wrap 应该是一个离散变量
用两个变量展示的话,即两种变量的组合 facet_grid()
facet_grid()
后面输入的是两个变量,其两个变量之间通过~来连接
ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy)) + facet_grid(drv ~ cyl)
使用facet_grid()依旧可以实现单个变量分面绘图,只需要改动一下,第一个参数换为点号,代表整个数据结构
ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy)) + facet_grid(. ~ cyl)
这就和下面使用facet_wrap,一样了,只是其不含点号
哦
ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy)) + facet_wrap(~ cyl,nrow=1)因为默认是两行哦,所以改成一行