python数据分析与挖掘实战(三)

python数据分析与挖掘实战(三)

分布分析

分布分析能揭示数据的分布特征和分布类型。对于定量数据,欲了解其分布形势是对称的还是非对称的,发现某些特大或特小的可疑值,可通过绘制频率分布表、绘制频率分布直方图、绘制茎叶图进行直观地分析;对于定性分类数据,可用饼图和条形图直观地显示分布情况。

统计量分析

用统计指标对定量数据进行数据统计描述,从集中趋势和离中趋势两个方面进行分析。

集中趋势度量

1)均值 2)中位数 3)众数

离散趋势度量

1)极差 极差=最大值-最小值
2)标准差
3)异变系数:标准差除以平均数乘以百分之百
异变系数主要用来比较两个或多个具有不同单位或不同波动幅度的数据集的离中趋势。
4)四分位数间距
四分位数间距包含了全部观察值的一半,其值越大,说明数据的变异程度越大;反之,说明变异程度越小
我们知道,DataFrame对象的describe()方法可以给出一些基本的统计量,我们可以利用这点进行对数据的分析。

#餐饮销量数据统计量分析
from __future__ import print_function
import pandas as pd

catering_sale = '../data/catering_sale.xls' #餐饮数据
data = pd.read_excel(catering_sale, index_col = u'日期') #读取数据,指定“日期”列为索引列
data = data[(data[u'销量'] > 400)&(data[u'销量'] < 5000)] #过滤异常数据
statistics = data.describe() #保存基本统计量

statistics.loc['range'] = statistics.loc['max']-statistics.loc['min'] #极差
statistics.loc['var'] = statistics.loc['std']/statistics.loc['mean'] #变异系数
statistics.loc['dis'] = statistics.loc['75%']-statistics.loc['25%'] #四分位数间距

print(statistics)

贡献度分析

贡献度分析又称为帕累托分析,它的原理是帕累托法则,又称28定律。

from __future__ import print_function
import pandas as pd

#初始化参数
dish_profit = '../data/catering_dish_profit.xls' #餐饮菜品盈利数据
data = pd.read_excel(dish_profit, index_col = u'菜品名')
data = data[u'盈利'].copy()
data.sort(ascending = False)

import matplotlib.pyplot as plt #导入图像库
plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号

plt.figure()
data.plot(kind='bar')
plt.ylabel(u'盈利(元)')
p = 1.0*data.cumsum()/data.sum()
p.plot(color = 'r', secondary_y = True, style = '-o',linewidth = 2)
plt.annotate(format(p[6], '.4%'), xy = (6, p[6]), xytext=(6*0.9, p[6]*0.9), arrowprops=dict(arrowstyle="->", connectionstyle="arc3,rad=.2")) #添加注释,即85%处的标记。这里包括了指定箭头样式。
plt.ylabel(u'盈利(比例)')
plt.show()

相关性分析

1)直接绘制散点图
2)绘制散点图矩阵
3)计算相关系数
由于pandas库里面有关于数据的相关系数的方法data.corr()直接计算,但是要注意相关系数的分析方法。
相关系数:考察两个事物(在数据里我们称之为变量)之间的相关程度。

如果有两个变量:X、Y,最终计算出的相关系数的含义可以有如下理解:
(1)、当相关系数为0时,X和Y两变量无关系。
(2)、当X的值增大(减小),Y值增大(减小),两个变量为正相关,相关系数在0.00与1.00之间。
(3)、当X的值增大(减小),Y值减小(增大),两个变量为负相关,相关系数在-1.00与0.00之间。
相关系数的绝对值越大,相关性越强,相关系数越接近于1或-1,相关度越强,相关系数越接近于0,相关度越弱。
通常情况下通过以下取值范围判断变量的相关强度:
相关系数 0.8-1.0 极强相关
0.6-0.8 强相关
0.4-0.6 中等程度相关
0.2-0.4 弱相关
0.0-0.2 极弱相关或无相关

发布了7 篇原创文章 · 获赞 1 · 访问量 196

猜你喜欢

转载自blog.csdn.net/qq_43303805/article/details/104010794