数据分析实战--统计分析

作者: 勤奋的土豆鹿鹿 | 来源:发表于2019-04-19 16:31 被阅读3次

本文主要内容是对数据分布进行分析,主要是集中和离中趋势度量,包括了做观测数据的连续概率分布的估计等,同时也是matplotlib常用的几个部分的练习。

首先模块导入

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

1、集中趋势度量

创建数据


data = pd.DataFrame({'value':np.random.randint(100,120,100),
                     'f':np.random.rand(100)})

f为权重,这里将f列设置成总和为1的权重占比1


data['f'] = data['f']/data['f'].sum()

(1)算数平均数

简单算数平均值 = 总和 / 样本数量 (不涉及权重)

mean = data['value'].mean()

加权算数平均值 = (x1f1 + x2f2 + ... + xnfn) / (f1 + f2 + ... + fn)

c_mean = (data['value']*data['f']).sum()/(data['f'].sum())

(2)位置平均数

众数为

mod = data['value'].mode()

中位数为


med = data['value'].median()

密度曲线

data['value'].plot(kind = 'kde',title = '密度曲线图')

密度曲线中加入:简单算数平均值、 加权算数平均值、中位数

简单算数平均值


plt.axvline(mean,color='r',linestyle='--')
plt.text(120,0.03,'简单算数平均值',color='r')

加权算数平均值

plt.axvline(c_mean,color='b',linestyle='--')
plt.text(120,0.035,'加权算数平均值',color='b')

中位数

plt.axvline(med,color='g',linestyle='--')
plt.text(120,0.04,'中位数',color='g')

image

2、离中趋势度量

创建数据、A/B销售额量级在同一水平

data = pd.DataFrame({'A_sale':np.random.rand(30)*1000,
                    'B_sale':np.random.rand(30)*1000},
                   index = pd.period_range('20170601','20170630'))

极差


sta = data['A_sale'].describe()
stb = data['B_sale'].describe()
max_min_a = sta['max'] - sta['min']
max_min_b = stb['max'] - stb['min']

A销售额的分位差为, B销售额的分位差为:

a_iqr = sta['75%'] - sta['25%']
b_iqr = stb['75%'] - stb['25%']

没有考虑中间变量的变动,测定离中趋势不稳定

箱型图


color = dict(boxes='DarkGreen', whiskers='DarkOrange', medians='DarkBlue', caps='Gray')
data.plot.box(grid=True,color=color,vert=False)
image

(2)方差与标准差

方差:


a_var = data['A_sale'].var()
b_var = data['B_sale'].var()

标准差:

std_a = sta['std']
std_b = stb['std']
fig,ax = plt.subplots(2,1,figsize=(10,10))

A密度曲线,1个标准差


data['A_sale'].plot(kind='kde',title='A密度曲线',ax=ax[0])
ax[0].axvline(sta['50%'],linestyle='--',color='r')
ax[0].axvline(sta['50%']+std_a,linestyle='--',color='b')
ax[0].axvline(sta['50%']-std_a,linestyle='--',color='b')

B密度曲线,1个标准差

data['B_sale'].plot(kind='kde',title='B密度曲线',ax=ax[1])
ax[1].axvline(stb['50%'],linestyle='--',color='r')
ax[1].axvline(stb['50%']+std_b,linestyle='--',color='b')
ax[1].axvline(stb['50%']-std_b,linestyle='--',color='b')

image image

更多文章关注二维码相互交流呀!

相关文章

  • 数据分析实战--统计分析

    本文主要内容是对数据分布进行分析,主要是集中和离中趋势度量,包括了做观测数据的连续概率分布的估计等,同时也是mat...

  • (九)数据的学习|python数据分析与展示(学习笔记)

    1.数据的排序2.数据的基本统计分析3.数据的累计统计分析4.数据的相关分析5.小结[网页链接【Python数据分...

  • R包:phyloseq: 扩增子统计分析利器

    phyloseq: 扩增子统计分析利器 phyloseq包对多类型数据的综合软件,并其对这些数据提供统计分析和可视...

  • python实战总结 - 草稿

    1数据分析项目实战-用户消费行为分析数据分析实战,混泥土机器故障预测2数据分析项目实战-数据分析师的招聘薪资3电脑...

  • python实战总结

    1数据分析项目实战-用户消费行为分析数据分析实战,混泥土机器故障预测2数据分析项目实战-数据分析师的招聘薪资3电脑...

  • 2022-04-25GIS空间分析

    GIS属性数据 类别属性 描述属性 一般统计分析 先对数据进行描述性统计分析 再选择进一步分析的方法 数据的频数分...

  • SPSS基本统计分析

    描述性统计分析 描述性统计分析可以对数据进行基本描述,例如:平均值、众数、中位数、方差、总数。 频数分析,对数据进...

  • 谁说菜鸟不会数据分析(入门篇)

    1、数据分析那些事儿 数据分析是神马 数据分析: 数据分析是指用适当的统计分析方法对搜集来的大量数据进行分析,将他...

  • 何为数据分析

    何为数据分析: 简单说,数据分析就是对数据进行分析,专业说法:数据分析是指用适当的统计分析方法对收集来的大量数据进...

  • 跟小白学Python数据分析——描述性统计分析

    基本统计分析,又叫描述性统计分析,它是指运用制表、分类、图形以及计算概括性数据来描述数据特征的各项活动,以发现其内...

网友评论

    本文标题:数据分析实战--统计分析

    本文链接:https://www.haomeiwen.com/subject/dphcgqtx.html