R语法及绘图数据-R语言-图表-决策-Linux-Python技术热点

R for data Science(一)

2018-09-08  本文已影响41人  一路向前_莫问前程_前程似锦
看到群里一个个R语言大神,让我觉得自己该去好好提高自己的R功底了,所以接下来的一段时间,我主要和大家一起分享学习这本R语言书,来和大家提高R语言功底,这本书是R大神Hadley Wickham的著作,旨在给大家提供如何用R语言进行数据分析,算是一个基础入门书。
本书一共5大部分,30个小节,我将用两到三个月的时间和大家分享,数据科学是一个巨大的领域,我们不可能通过阅读一本书来掌握它。这本书的目的是给我们一个坚实的基础。在一个典型的数据科学项目中所需要的工具模型是这样的:
<figure style="margin: 0px; padding: 0px; font-family: "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial; color: rgb(62, 62, 62); line-height: inherit; background-color: rgb(255, 255, 255);"> image

<figcaption style="margin: 10px 0px 0px; padding: 0px; font-size: 0.7em; color: rgb(153, 153, 153); line-height: inherit; text-align: center;">mark</figcaption>

</figure>

就是数据导入-数据整理-数据转置-建立模型-数据可视化-交流的一个过程


安装本书所需要的工具包和数据包

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 应该是一个离散变量
<figure style="margin: 0px; padding: 0px; font-family: "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial; color: rgb(62, 62, 62); line-height: inherit; background-color: rgb(255, 255, 255);"> image

<figcaption style="margin: 10px 0px 0px; padding: 0px; font-size: 0.7em; color: rgb(153, 153, 153); line-height: inherit; text-align: center;">mark</figcaption>

</figure>

用两个变量展示的话,即两种变量的组合 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)因为默认是两行哦,所以改成一行

都会得到下面的结果图

<figure style="margin: 0px; padding: 0px; font-family: "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial; color: rgb(62, 62, 62); line-height: inherit; background-color: rgb(255, 255, 255);"> image

<figcaption style="margin: 10px 0px 0px; padding: 0px; font-size: 0.7em; color: rgb(153, 153, 153); line-height: inherit; text-align: center;">mark</figcaption>

</figure>

上一篇下一篇

猜你喜欢

热点阅读