R数据分析----rattle Exploring Data

做为数据分析者,咱们须要熟悉数据的意义和分布,甚至在创建模型以前,咱们就能够经过必定的技术手段发现数据中存在额有意义的信息。经过探索数据(包括数据的最大最小值,平均值,以及分布规律),咱们能够更好的理解数据。经过探索数据,咱们能够处理数据中存在的一些问题,好比缺失值、噪声、错误的数据和误差分布的数据。函数

rattle是R的数据数据分析工具包,咱们能够经过文本视区的运行结果对数据进行可视化,探索属性间的关联性。在rattle的explore工具栏提供了咱们须要的理解数据的工具。工具

1.数据总结大数据

下图展现了rattle中explore按钮的可选项。咱们开始数据探索基于Summary选项,它提供了数据的文本统计信息。3d

咱们在Data选项中按执行按钮,在Explore中选Summary选项后按执行按钮,结果以下:blog

一般,有时候咱们会处理很是大的数据集,可视化会花费很大的计算成本。因此在数据中随机抽取一些样原本代替总体的数据。在Data工具栏的Partition选项就能够这样选择,下面的例子随机抽取了weather的20% 的数据。数据分析

> dim(weather)
[1] 366  24

> set.seed(42)
> smpl <- sample(nrow(weather),0.2*nrow(weather))
> dim(weather[smpl,])
[1] 73 24

  咱们看到weather数据集总体有366行,24列,采样后有73个样本,24个属性。it

这里是简单的举个大数据集采样的例子,366个样本是很小的,咱们不须要进行采样就能够。io

基本的统计信息class

最简单的统计输出方式是用summary()函数,下面咱们看weather的24个属性的7,8,9属性值:数据可视化

  > summary(weather[7:9])
    Sunshine       WindGustDir  WindGustSpeed  
 Min.   : 0.000   NW     : 73   Min.   :13.00  
 1st Qu.: 5.950   NNW    : 44   1st Qu.:31.00  
 Median : 8.600   E      : 37   Median :39.00  
 Mean   : 7.909   WNW    : 35   Mean   :39.84  
 3rd Qu.:10.500   ENE    : 30   3rd Qu.:46.00  
 Max.   :13.600   (Other):144   Max.   :98.00  
 NA's   :3        NA's   :  3   NA's   :2      
> 

  对于数值型变量,它列出了属性的最小值,最大值,均值,中间值,以及一分位和三分位均值,空值等。一般的状况下,均值和中间的误差比较大,咱们会认为一些样本在某个特定方向上偏离了均值点(一些大的正负样本值,一般咱们称之为离群点)。

对于类别型变量将会列出最频繁出现的几项,剩下的在other选项里。在上例中,WindGustDir属性的NW有73个样本,NNW有44个属性,依次等等。全部属性的缺失值的数量将会在最后列出NA‘S。

2.数据可视化分布

经过绘制图形咱们能够更容易理解数据,更生动的表达数据信息,比列表形式的统计形式更直白有效。可视化研究的工具能够帮助咱们理解数据的特色,指引咱们以更合适的方式转换属性,选择咱们感兴趣的属性值。R为数据的可视化提供了有力的工具,而且咱们能够交互式生成咱们须要的图形,可操做性更强。在rattle的Explore工具栏下类型选项的Distribution下,咱们能够随意选择想要绘制的属性选项,若是选择多个属性,那么也能够每一个页面多图绘制。默认状况下,每一个窗口绘制四个图形。

在Data选项加载weather数据集(直接按执行按钮),并切换到Explore工具栏下,选到Distribution,生成图以下:

对于数值型变量,咱们能够绘制属性的箱体图(Box Plot),直方图(Histogram),Cumulative Function plot(累积函数图)

对于类别型变量,咱们能够绘制属性的条形图(Bar Plot),点图(Dot Plot),马赛克图(Mosaic)

 

咱们选取Rainfall和Sunshine两个属性的Box PLot(箱体图):

接下来咱们分别详细分析下box plot、Histogram、cumulative Distribution PLot(累积分布)、Benford's Law(检测奇异点),Bar plot

,Dot plot,Mosaic plot(马赛克)和Pairs and Scatter plot(散点图)。

2.1Box plot(箱体图)

Rattle的箱体图比R的基本绘图提供了一些额外的统计信息。下图中咱们选择属性Humidity3pm,Raintomorrow做为目标属性箱体的宽度表示了目标属性值的分布。

咱们在图中标出了基本的统计信息,最右边箱体区间值为76-40,最大、最小值基于中值不能超过箱体区间的1.5倍(最大值=<56+(74-40)*1.5),超出区域的点为离群点,如左边两个箱体最上边的黑圆点。箱体的缺口为中值的95%的置信区间(56-56*5%<x<56+56*5%).

Rattle的Log标签给出了详细的运行代码:

# Rattle timestamp: 2017-05-08 15:58:55 x86_64-w64-mingw32 

# Display box plots for the selected variables. 

# Use ggplot2 to generate box plot for Humidity3pm

# Generate a box plot.

p01 <- crs %>%
  with(dataset[,]) %>%
  dplyr::mutate(RainTomorrow=as.factor(RainTomorrow)) %>%
  ggplot2::ggplot(ggplot2::aes(y=Humidity3pm)) +
  ggplot2::geom_boxplot(ggplot2::aes(x="All"), notch=TRUE, fill="grey") +
  ggplot2::stat_summary(ggplot2::aes(x="All"), fun.y=mean, geom="point", shape=8) +
  ggplot2::geom_boxplot(ggplot2::aes(x=RainTomorrow, fill=RainTomorrow), notch=TRUE) +
  ggplot2::stat_summary(ggplot2::aes(x=RainTomorrow), fun.y=mean, geom="point", shape=8) +
  ggplot2::xlab("RainTomorrow\n\nRattle 2017-5月-08 15:58:55 zhilei") +
  ggplot2::ggtitle("Distribution of Humidity3pm\nby RainTomorrow") +
  ggplot2::theme(legend.position="none")

# Display the plots.

gridExtra::grid.arrange(p01)

  咱们能够将命令拷贝到控制台窗口,根据须要手动修改命令绘制出本身想要的图形。

相关文章
相关标签/搜索