直方图
2018-09-03
2018-09-03
1 数据准备
library(readxl)
jsdata=read_excel("D:/TASK/净水器建模(1月19日)副本1.xlsx")
str(jsdata)
## Classes 'tbl_df', 'tbl' and 'data.frame': 1011 obs. of 20 variables:
## $ 标题 : chr "惠安特水龙头净水器家用厨房直饮净水机双出水智能纯水机ro反渗透" "爱华普净水器家用直饮加热一体机RO反渗透纯水机厨房自来水过滤器" "【新品上市】史密斯佳尼特550G无桶大流量净水器CDR550-A1" "碧云泉净水器家用直饮加热一体机自来水过滤器反渗透净水机器R506" ...
## $ 原价 : num 1664 6990 4998 4999 2099 ...
## $ 促销价 : num 499 1298 1099 558 1188 ...
## $ 销量 : num 845 550 121 103 850 ...
## $ 评价 : num 2849 3049 129 378 2054 ...
## $ 天猫积分 : num 49 129 369 469 86 49 89 86 269 109 ...
## $ 描述评分 : num 4.8 4.9 4.9 4.9 4.9 4.9 4.8 4.9 4.9 4.9 ...
## $ 服务评分 : num 4.8 4.8 4.9 4.9 4.9 4.8 4.8 4.9 4.9 4.9 ...
## $ 物流评分 : num 4.9 4.8 4.9 4.9 4.8 4.9 4.8 4.9 4.8 4.9 ...
## $ 人气 : num 6590 12879 456 15450 11537 ...
## $ 保修期 : chr "1年" "1年" "1年" "2年" ...
## $ 店铺分类 : chr "官方旗舰店" "官方旗舰店" "官方旗舰店" "官方旗舰店" ...
## $ 智能类型 : chr "其他" "其他" "不支持智能" "其他" ...
## $ 颜色 : chr "白色" "黑色" "白色" "黑色" ...
## $ 使用位置 : chr "终端净水" "终端净水" "终端净水" "终端净水" ...
## $ 功效 : chr "直饮" "直饮" "直饮" "直饮" ...
## $ 净水器品牌: chr "Huianter/惠安特" "爱华普" "CHANITEX/佳尼特" "碧云泉" ...
## $ 分类 : chr "纯水机" "净水机;纯水机" "净水机;纯水机;反渗透纯水机" "净水机;纯水机;台面净水器;反渗透纯水机" ...
## $ 工作原理 : chr "反渗透" "反渗透" "反渗透" "反渗透" ...
## $ 滤芯 : chr "活性炭;RO膜" "活性炭;活性炭;超滤;PPF棉;RO膜" "活性炭;RO膜" "活性炭;RO膜;PP棉,活性炭纤维" ...
由数据结构信息得知,该净水器数据包含20个变量(字段),1011条样本量。
2 直方图
直方图主要是对连续型的变量进行数据分布展示。直方图是将值的范围分段,即将整个值的范围分成一系列间隔,然后计算每个间隔中有多少值。这些值通常被指定为连续的,不重叠的变量间隔。间隔必须相邻,并且通常是(但不是必须的)相等的大小。
2.1 绘制简单直方图
绘制直方图可以查看数据集中数据的分布特征。简单直方图的绘制方法为:hist(数据集$变量名,xlab=“轴标签”,ylab=“频数”,main=“”,ylim=c(1,n),xlim=c(1,n))
其中,xlab表示自变量标签,ylab表示因变量标签,main表示图形标题,col表示图形颜色,ylim和xlim表示的是X轴和Y轴设置的范围。
假设数据集中研究的主要因素是销量,则此处的销量称为因变量(被解释变量),再对销量的影响指标等分析之前,可对因变量的数据趋势进行可视化分析,判断因变量的取值范围和数据的集中趋势,常对因变量绘制直方图分析,如下所示:
hist(jsdata$销量,xlab="销量",ylab="频数",col="lightgreen",main="")#绘制直方图
从上图可以看出,数据集的分布较为分散,在2000到12000之间,直方图趋近与和X轴重合,直方图的分布值不能体现出来。原因是销量为连续型数值变量,且销量的数值较大,超过整体范围,存在较大的极差。同时,随着自变量的变化,因变量也在发生变化,为了让这种波动达到稳定,克服方差带来的影响,可对数据进行简单的对数处理,使得数据的趋势走向更为明显,绘制直方图。如下所示:
jsdata$销量=log(jsdata$销量+1) #因变量数值作对数处理
hist(jsdata$销量,xlab="销量",ylab="频数",col="lightgreen",main="")#绘制直方图
上图是对净水器数据中的因变量销量对数转化后的直方图,从图形可以看出,销量呈右偏分布。
2.2 ggplot绘制直方图
基本书写语法为:ggplot(数据,aes(x=因变量))+geom_histogram(binwidth=组距,fill=“图形填充色”,colour=“边框线颜色”)
其中aes(x=因变量)表示坐标,geom_histogram()表示绘制直方图,fill表示图形的填充色,colour表示图形边框的颜色,binwidth表示组距。绘制如下所示:
如上图,利用ggplot2包绘制直方图,以uspopchange数据为例,Change在直方图中为横坐标,图形填充色为深灰色,边框线为黑色。
3 本章汇总
参数 | 类别 | 功能 |
---|---|---|
readxl | 包 | 读取EXCEL数据包 |
hist | 函数 | 绘制直方图 |
ggplot2 | 包 | 图形的绘制 |
geom_histogram | 函数 | 直方图绘制 |