统计分析_频度分析

Posted fuyusheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了统计分析_频度分析相关的知识,希望对你有一定的参考价值。

频度分析-用一定的分类方法将数组分类,统计各分组下样本数量,以图表辅助,用更直观的方式描述出数组的分布趋势。

业务意义:在实际数据分析工作中,经常需要将数据按照某个维度分段进行指标统计,以发现问题和解决问题。

 

例子:一个班40个学生,考试成绩如下:

[73,87,88,65,73,76,80,95,83,69,55,67,70,94,86,81,87,95,84,92,92,76,69,97,72,90,72,85,80,83,97,95,62,92,67,73,91,95,86,77]

集中趋势

print(‘均值:‘+str(round(np.mean(score),1)),‘中位数:‘+str(np.median(score)),‘众数:‘+str(stats.mode(score)[0][0]))

均值:81.3 中位数:83.0 众数:95

离散程度

print(‘最高分:‘+str(max(score)),‘最低分:‘+str(min(score)),‘极差:‘+str(max(score)-min(score)),‘四分位距:‘+str(
np.quantile(score,0.75)-np.quantile(score,0.25)),‘方差:‘+str(round(np.var(score),1)),‘方差:‘+str(round(np.std(score),1))) 

最高分:97 最低分:55 极差:42 四分位距:18.5 方差:118.1 方差:10.9
  • 最高分97,众数为95说明学生分数在高分段集中,可反应试卷难度不高
  • 最低分与均值相差81.3-55=26.5,偏差较大,该同学需要重点关注。

除了以上信息,若只依赖于基础的数据指标,很难对数据做出全面的解读

 

数据频度表-按照数据某些维度,将数组分段后进行统计。

bins = np.arange(55,101,5) #成绩分段
bins = pd.cut(df,bins,include_lowest = True,right = False)
bins_score = df.groupby(bins)
bins_score.count()

[55, 60)     1
[60, 65)     1
[65, 70)     5
[70, 75)     6
[75, 80)     3
[80, 85)     6
[85, 90)     6
[90, 95)     6
[95, 100)    6
dtype: int64

 从上表中,可以直观的发现,各分段的学生人数较为平均,说明此次考试并没有拉开差距,形成两级分化,另外部分同学分数较低,需要额外关注。

 

频度直方图

plt.hist(score,bins = 9)
plt.show()

技术图片

 

箱线图

plt.boxplot(score)
plt.show()

技术图片

 

小结

在数据分析中,最重要的不是频度分析方法,可是在频度分析中体现的分类思想,将数据维度进行分段统计,更加直观的观察数据发现问题。

 

2020-04-15 01:54

 

以上是关于统计分析_频度分析的主要内容,如果未能解决你的问题,请参考以下文章

采取措施后降低的是严重度,频度还是探测度

2-3课程 比较:统计序列中元素的出现频度

Android 逆向整体加固脱壳 ( DEX 优化流程分析 | DexPrepare.cpp 中 dvmOptimizeDexFile() 方法分析 | /bin/dexopt 源码分析 )(代码片段

Android 插件化VirtualApp 源码分析 ( 目前的 API 现状 | 安装应用源码分析 | 安装按钮执行的操作 | 返回到 HomeActivity 执行的操作 )(代码片段

Android 事件分发事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup )(代码片段

Android内核源码bionic目录下的子目录arch-arm源码分析笔记