【Python 数据分析】描述性统计:平均数(均值)、方差、标准差、极大值、极小值、中位数、百分位数、用箱型图表示分位数

这篇具有很好参考价值的文章主要介绍了【Python 数据分析】描述性统计:平均数(均值)、方差、标准差、极大值、极小值、中位数、百分位数、用箱型图表示分位数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

简述 / 前言

前面讲了数据分析中的第一步:数据预处理,下面就是数据分析的其中一个重头戏:描述性统计,具体内容为:平均数(均值)、方差、标准差、极大值、极小值、中位数、百分位数、用箱型图表示分位数

1. 平均数(均值)、方差、标准差、极大值、极小值

关键方法 含义
.mean() 求均值
.var() 求方差
.std() 求标准差
.max() 求极大值
.min() 求极小值

示例:

import pandas as pd
import numpy as np
import math

np.random.seed(2024)

df = pd.DataFrame(columns=['num'])  # 构造原始数据文件
df['num'] = [np.random.ranf() * 10 for i in range(10)]
print(df, '\n')

# num列的平均值
print(f"列num的平均值(均值)为:{df['num'].mean()}")
# num列的方差
print(f"列num的方差为:{df['num'].var()}")
# num列的标准差(方法一)
print(f"列num的标准差(方法一)为:{df['num'].std()}")
# num列的标准差(方法二)
print(f"列num的标准差(方法二)为:{math.sqrt(df['num'].var())}")
# num列的极大值
print(f"列num的极大值为:{df['num'].max()}")
# num列的极小值
print(f"列num的极小值为:{df['num'].min()}")

输出:

        num
0  5.880145
1  6.991087
2  1.881520
3  0.438086
4  2.050190
5  1.060629
6  7.272401
7  6.794005
8  4.738457
9  4.482958 

列num的平均值为:4.158947812331025
列num的方差为:6.793267492129306
列num的标准差(方法一)为:2.6063897429450775
列num的标准差(方法二)为:2.6063897429450775
列num的极大值为:7.2724014368445475
列num的极小值为:0.43808563746864815

2. 中位数

关键方法:.median()

示例:

import pandas as pd
import numpy as np

np.random.seed(2024)

df = pd.DataFrame(columns=['num'])  # 构造原始数据文件
df['num'] = [np.random.ranf() * 10 for i in range(10)]
print(df, '\n')

# num列的中位数
print(f"列num的中位数为:{df['num'].median()}")

输出:

        num
0  5.880145
1  6.991087
2  1.881520
3  0.438086
4  2.050190
5  1.060629
6  7.272401
7  6.794005
8  4.738457
9  4.482958 

列num的中位数为:4.610707639442616

3. 百分位数

关键方法:.quantile(q=0.5, interpolation="linear"),各参数含义如下:

参数 含义
q 要计算的分位数,取值范围为:[0, 1],常取:0.25, 0.5(默认值), 0.75
interpolation 插值类型,可以选:linear(默认值), lower, higher, midpoint, nearest

示例:

import pandas as pd
import numpy as np

np.random.seed(2024)

df = pd.DataFrame(columns=['num'])  # 构造原始数据文件
df['num'] = [np.random.ranf() * 10 for i in range(10)]
print(df, '\n')

# num列的下分位数(25%)
print(f"列num的下分位数(25%)为:{df['num'].quantile(0.25)}")
# num列的中位数(50%)
print(f"列num的中位数(50%)为:{df['num'].quantile(0.50)}")
# num列的上分位数(75%)
print(f"列num的上分位数(75%)为:{df['num'].quantile(0.75)}")

# 或者
print(f"\n列num的分位数(25%、50%、75%)为:\n{df['num'].quantile([.25, .5, .75])}")

输出:

        num
0  5.880145
1  6.991087
2  1.881520
3  0.438086
4  2.050190
5  1.060629
6  7.272401
7  6.794005
8  4.738457
9  4.482958 

列num的下分位数(25%)为:1.9236870812745168
列num的中位数(50%)为:4.610707639442616
列num的上分位数(75%)为:6.565540223677057

列num的分位数(25%50%75%)为:
0.25    1.923687
0.50    4.610708
0.75    6.565540
Name: num, dtype: float64

4. 用箱型图表示分位数

关键方法:df['column']..plot.box()

一般写法:df['column'].plot.box(patch_artist=True, notch=True, color=color, figsize=(8, 6)),各参数含义如下:

参数 含义
patch_artist 箱型图是否需要填充颜色(True:填充颜色;False:不填充颜色,只保留边缘颜色)
notch 是否用凹进的方式显示中位数(50%)(True:中位数用凹进的方式表示;False:中位数用一条线段表示)
color 箱型图的颜色
figsize 图片大小

示例【patch_artist 和 notch 都为 True】:

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

np.random.seed(2024)

df = pd.DataFrame(columns=['num'])  # 构造原始数据文件
df['num'] = [np.random.ranf() * 10 for i in range(10)]

df['num'].plot.box(patch_artist=True, notch=True, color='green', figsize=(8, 6))  # 绘制箱状图
plt.show()

输出:
箱体 百分位数,Python数据分析,python,数据分析,均值算法

示例【patch_artist 和 notch 都为 False】:

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

np.random.seed(2024)

df = pd.DataFrame(columns=['num'])  # 构造原始数据文件
df['num'] = [np.random.ranf() * 10 for i in range(10)]

df['num'].plot.box(patch_artist=False, notch=False, color='green', figsize=(8, 6))  # 绘制箱状图
plt.show()

输出:
箱体 百分位数,Python数据分析,python,数据分析,均值算法

从这个箱型图可以很清晰的看出样本数据的极小值和极大值,以及上分位数(75%),中位数(50%)和下分位数(25%)。

除了上面那种写法,还有下面这种写法:df.plot.box(column=column, patch_artist=True, notch=True, color=color, figsize=(8, 6)),就是把 column 放到 box 方法里面。

那么上述代码可以改为:

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

np.random.seed(2024)

df = pd.DataFrame(columns=['num'])  # 构造原始数据文件
df['num'] = [np.random.ranf() * 10 for i in range(10)]

# df['num'].plot.box(patch_artist=False, notch=False, color='green', figsize=(8, 6))  # 绘制箱状图
# 或者
df.plot.box(column='num', patch_artist=False, notch=False, color='green', figsize=(8, 6))  # 绘制箱状图
plt.show()

输出的结果是一样的~文章来源地址https://www.toymoban.com/news/detail-811037.html

到了这里,关于【Python 数据分析】描述性统计:平均数(均值)、方差、标准差、极大值、极小值、中位数、百分位数、用箱型图表示分位数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • R语言实验1 :数据的描述性分析

    实验 1     数据的描述性分析 一、实验目的 1. 掌握理解均值、方差等一系列统计相关概念。 2. 加深对散点图、直方图、相关系数等概念的理解。 3. 熟悉R语言等语言的集成开发环境。 二、实验分析与内容 完成教材P37第6题。 题目如下: ( 1 )(1)分别计算数学成绩和统计学成

    2024年01月18日
    浏览(49)
  • PART 4 描述性统计分析

    · 分布剖析 有两条法则可以告诉你: 大部分数据落在概率分布中的哪个区域。 经验法则 ——适用于 符合 正态分布 的任何数据 集。表明:几乎所有的数据都位于距离均值3个标准差的范围内。具体: 大约68%的数值位于距离均值1个标准差的范围内; 大约95%的数值位于距离均

    2024年02月08日
    浏览(38)
  • 常用【描述性统计指标】含义(by python)

    统计学有时候会被误解,好像必须有大量的样本数据,才能使统计结果有意义。 这会让我们觉得统计学离我们的日常生活很遥远。 其实,如果数据的准确度高的话,少量的样本数据同样能反映出真实的情况。 比如,很多国家选举时不断做的民意调查,一般做到有效样本160

    2024年02月05日
    浏览(46)
  • 统计学基础1:描述性统计(数据的离散度、极差、方差、标准差)

    1、频数:一组定量数据中,每一个数值发生的次数即为频数。 2、频率:将每一个数值发生的次数除以样本总数量,即频率

    2023年04月10日
    浏览(47)
  • 描述性统计图表——散点图

    适用范围:当估计两个变量之间存在相关关系时,用散点图进行确认,并观察和确定两者的关系强度。还可以用散点图分析坐标点的分布模式,如“风险机遇评估矩阵”。 即便自变量为连续性变量,仍然可以使用散点图。也就是说散点图通过散点的疏密程度和变化趋势表示二

    2024年02月01日
    浏览(89)
  • 描述性统计图表——直方图

    概念:直方图是频数直方图的简称,通常用来描述类别数据。它是用一系列宽度相等、高度不等的长方形表示数据的图。长方形的宽度表示数据范围的间隔,长方形的高度表示在给定间隔内的数据数。一般横轴表示数据类型,纵轴表示分布情况。直方图也可以被归一化以显示

    2024年02月06日
    浏览(57)
  • 数理统计SPSS软件实验报告一--描述性统计

    实验报告内容: 1 、实验目的: 熟练掌握利用SPSS进行描述性统计分析的基本技能。 2 、实验要求: (1) 利用SPSS软件计算常用统计量(样本均值、中位数、众数、分位数;最大值、最小值、极差、总和、样本方差、样本标准差、变异系数;偏度系数、峰度系数等)的值; (2)

    2023年04月12日
    浏览(58)
  • 数据的统计描述和分析——假设检验

    对总体X的分布律或分布参数作某种假设,根据抽取的样本观察值,运用数理统计的分析方法,检验这种假设是否正确,从而决定接受假设或拒绝假设. 1. 参数检验 :如果观测的分布函数类型已知,这时构造出的统计量依赖于总体的分布函数,这种检验称为参数检验.参数检验

    2024年02月14日
    浏览(44)
  • 用Python做数据分析之数据统计

    接下来说说数据统计部分,这里主要介绍数据采样,标准差,协方差和相关系数的使用方法。 1、数据采样 Excel 的数据分析功能中提供了数据抽样的功能,如下图所示。Python 通过 sample 函数完成数据采样。 2、数据抽样 Sample 是进行数据采样的函数,设置 n 的数量就可以了。函

    2024年02月07日
    浏览(52)
  • python数据分析-概率论与数理统计基础

    大家好,今天我们用python语言去实现概率论与数理统计的一些基础计算等。常用第三方SciPy库、NumPy库来实现概率论和数理统计的计算。 SciPy是一个基于Python的开源库,是一组专门解决科学计算中各种基本问题的模块的集合,经常与NumPy、StatsModels、SymPy这些库一起使用。SciPy的

    2024年02月07日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包