Python---数据分析(Pandas十一:二维数组DataFrame统计计算二)

1、std

用于计算 DataFrame 中数值的标准差。

python 复制代码
DataFrame.std(axis=0, skipna=True, ddof=1, numeric_only=False, **kwargs)

| 描述 | 说明 |
| axis | {0 或 'index', 1 或 'columns', None}, 默认为 0。这个参数决定了计算标准差是在哪个轴上进行: 如果 axis=0 或 axis='index',则对每列进行计算,返回一个 Series,其 索引为列名,值为每列的标准差。 如果 axis=1 或 axis='columns',则对每行进行计算,返回一个 Series, 其索引为行索引,值为每行的标准差。 |
| skipna | 布尔值,默认为 True。如果为 True,则在计算标准差时会忽略 NaN 值。 |
| ddof | 整数,默认为 1。Delta Degrees of Freedom,计算样本标准差时使用的无 偏估计的自由度修正。对于整个群体的标准差, ddof 应该设置为 0。 |
| numeric_only | 布尔值,默认为 False。如果为 True,则只对数值列进行计算, 忽略非数值列。 |

**kwargs 其他关键字参数。这些参数通常用于兼容性或特殊用途,通常不需 要。
python 复制代码
import pandas as pd
import numpy as np
df = pd.DataFrame({
    'A': [1, 2, 3, 4],
    'B': [5, 6, 7, 8],
})
sum_per_column = df.std()
print("std per column:")
print(sum_per_column)
python 复制代码
std per column:
A    1.290994
B    1.290994
dtype: float64

2 、quantile

用于计算 DataFrame 中数值的分位数。

python 复制代码
DataFrame.quantile(q=0.5, axis=0, numeric_only=False, interpolation='linear', method='single')

| 描述 | 说明 |
| q | 可以是单个浮点数或浮点数列表,默认为 0.5。要计算的的分位数,应该在 0 到 1 之间。例如,q=0.5 表示中位数。 |
| axis | {0 或 'index', 1 或 'columns', None}, 默认为 0。这个参数决定了计算分位数是在哪个轴上进行: 如果 axis=0 或 axis='index',则对每列进行计算,返回一个 Series,其 索引为列名,值为每列的分位数。 如果 axis=1 或 axis='columns',则对每行进行计算,返回一个 Series, 其索引为行索引,值为每行的分位数。 |
| numeric_only | 布尔值,默认为 False。如果为 True,则只对数值列进行计算, 忽略非数值列。 |
| interpolation | {'linear', 'lower', 'higher', 'midpoint', 'nearest'}, 默认为 'linear'。这个参数决定了分位数在数据不包含精确分位数值时的插值方法: 'linear': 线性插值。 'lower': 选择小于分位数的最大值。 'higher': 选择大于分位数的最小值。 'midpoint': 选择两个相邻数据的中间值。 'nearest': 选择最接近分位数的值。 |

method {'single', 'table'}, 默认为 'single'。这个参数决定了计算分位数的方法: 'single': 对每列或每行单独计算分位数。 'table': 使用整个表的分位数。选择table时,插值方法只能是higher、 lower、nearest之一。
python 复制代码
import pandas as pd
import numpy as np
df = pd.DataFrame({
    'A': [1, 2, 3, 4],
    'B': [5, 6, 7, 8],
})
sum_per_column = df.quantile()
print("quantile per column:")
print(sum_per_column)
python 复制代码
quantile per column:
A    2.5
B    6.5
Name: 0.5, dtype: float64

3、 cummax

用于计算 DataFrame 中数值的累积最大值。

python 复制代码
DataFrame.cummax(axis=0, skipna=True, *args, **kwargs)

| 描述 | 说明 |
| axis | {0 或 'index', 1 或 'columns', None}, 默认为 0。这个参数决定了计算累积最大值是在哪个轴上进行: 如果 axis=0 或 axis='index',则对每列进行计算,返回一个 Series,其 索引为列名,值为每列的累积最大值。 如果 axis=1 或 axis='columns',则对每行进行计算,返回一个 Series, 其索引为行索引,值为每行的累积最大值。 |
| skipna | 布尔值,默认为 True。如果为 True,则在计算累积最大值时会忽略 NaN 值。 |

*args 和 **kwargs 其他关键字参数。这些参数通常用于兼容性或特殊用途,通常不需 要。
python 复制代码
import pandas as pd
import numpy as np
 
# 创建一个 DataFrame
df = pd.DataFrame({
    'A': [1, 2, np.nan, 4, 5],
    'B': [5, np.nan, 3, 2, 1],
})
 
print(df)
 
# 计算每列的累积最大值
cummax_per_column = df.cummax(axis=0)
print("Cumulative max per column:")
print(cummax_per_column)
 
# 计算每行的累积最大值
cummax_per_row = df.cummax(axis=1)
print("\nCumulative max per row:")
print(cummax_per_row)
python 复制代码
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  3.0
3  4.0  2.0
4  5.0  1.0
Cumulative max per column:
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  5.0
3  4.0  5.0
4  5.0  5.0

Cumulative max per row:
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  3.0
3  4.0  4.0
4  5.0  5.0

4、 cummin

用于计算 DataFrame 中数值的累积最小值。

python 复制代码
DataFrame.cummin(axis=0, skipna=True, *args, **kwargs)

| 描述 | 说明 |
| axis | {0 或 'index', 1 或 'columns', None}, 默认为 0。这个参数决定了计算累积最小值是在哪个轴上进行: 如果 axis=0 或 axis='index',则对每列进行计算,返回一个 Series,其 索引为列名,值为每列的累积最小值。 如果 axis=1 或 axis='columns',则对每行进行计算,返回一个 Series, 其索引为行索引,值为每行的累积最小值。 |
| skipna | 布尔值,默认为 True。如果为 True,则在计算累积最小值时会忽略 NaN 值。 |

*args 和 **kwargs 其他关键字参数。这些参数通常用于兼容性或特殊用途,通常不需 要。
python 复制代码
import pandas as pd
import numpy as np
 
# 创建一个 DataFrame
df = pd.DataFrame({
    'A': [1, 2, np.nan, 4, 5],
    'B': [5, np.nan, 3, 2, 1],
})
 
print(df)
 
# 计算每列的累积最小值
cummin_per_column = df.cummin(axis=0)
print("Cumulative min per column:")
print(cummax_per_column)
 
# 计算每行的累积最小值
cummin_per_row = df.cummin(axis=1)
print("\nCumulative min per row:")
print(cummax_per_row)
python 复制代码
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  3.0
3  4.0  2.0
4  5.0  1.0
Cumulative min per column:
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  5.0
3  4.0  5.0
4  5.0  5.0

Cumulative min per row:
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  3.0
3  4.0  4.0
4  5.0  5.0

5、 cumsum

用于计算 DataFrame 中数值的累积 和。

python 复制代码
DataFrame.cumsum(axis=0, skipna=True, *args, **kwargs)

| 描述 | 说明 |
| axis | {0 或 'index', 1 或 'columns', None}, 默认为 0。这个参数决定了计算累积 和是在哪个轴上进行: 如果 axis=0 或 axis='index',则对每列进行计算,返回一个 Series,其 索引为列名,值为每列的累积 和。 如果 axis=1 或 axis='columns',则对每行进行计算,返回一个 Series, 其索引为行索引,值为每行的累积 和。 |
| skipna | 布尔值,默认为 True。如果为 True,则在计算累积 和时会忽略 NaN 值。 |

*args 和 **kwargs 其他关键字参数。这些参数通常用于兼容性或特殊用途,通常不需 要。
python 复制代码
import pandas as pd
import numpy as np
 
# 创建一个 DataFrame
df = pd.DataFrame({
    'A': [1, 2, np.nan, 4, 5],
    'B': [5, np.nan, 3, 2, 1],
})
 
print(df)
 
# 计算每列的累积和
cumsum_per_column = df.cumsum(axis=0)
print("Cumulative sum per column:")
print(cummax_per_column)
 
# 计算每行的累积和
cumsum_per_row = df.cumsum(axis=1)
print("\nCumulative sum per row:")
print(cummax_per_row)
python 复制代码
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  3.0
3  4.0  2.0
4  5.0  1.0
Cumulative sum per column:
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  5.0
3  4.0  5.0
4  5.0  5.0

Cumulative sum per row:
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  3.0
3  4.0  4.0
4  5.0  5.0

6、 cumprod

用于计算 DataFrame 中数值的累积乘积。

python 复制代码
DataFrame.cumprod(axis=0, skipna=True, *args, **kwargs)

| 描述 | 说明 |
| axis | {0 或 'index', 1 或 'columns', None}, 默认为 0。这个参数决定了计算累积乘积是在哪个轴上进行: 如果 axis=0 或 axis='index',则对每列进行计算,返回一个 Series,其 索引为列名,值为每列的累积乘积。 如果 axis=1 或 axis='columns',则对每行进行计算,返回一个 Series, 其索引为行索引,值为每行的累积乘积。 |
| skipna | 布尔值,默认为 True。如果为 True,则在计算累积乘积时会忽略 NaN 值。 |

*args 和 **kwargs 其他关键字参数。这些参数通常用于兼容性或特殊用途,通常不需 要。
python 复制代码
import pandas as pd
import numpy as np
 
# 创建一个 DataFrame
df = pd.DataFrame({
    'A': [1, 2, np.nan, 4, 5],
    'B': [5, np.nan, 3, 2, 1],
})
 
print(df)
 
# 计算每列的累积乘积
cumprod_per_column = df.cumprod(axis=0)
print("Cumulative sum per column:")
print(cummax_per_column)
 
# 计算每行的累积乘积
cumprod_per_row = df.cumprod(axis=1)
print("\nCumulative sum per row:")
print(cummax_per_row)
python 复制代码
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  3.0
3  4.0  2.0
4  5.0  1.0
Cumulative sum per column:
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  5.0
3  4.0  5.0
4  5.0  5.0

Cumulative sum per row:
     A    B
0  1.0  5.0
1  2.0  NaN
2  NaN  3.0
3  4.0  4.0
4  5.0  5.0
相关推荐
合作小小程序员小小店25 分钟前
SDN安全开发环境中常见的框架,工具,第三方库,mininet常见指令介绍
python·安全·生成对抗网络·网络安全·网络攻击模型
后台开发者Ethan29 分钟前
Python需要了解的一些知识
开发语言·人工智能·python
北京_宏哥38 分钟前
Python零基础从入门到精通详细教程11 - python数据类型之数字(Number)-浮点型(float)详解
前端·python·面试
盼小辉丶1 小时前
PyTorch生成式人工智能——使用MusicGen生成音乐
pytorch·python·深度学习·生成模型
HAPPY酷3 小时前
给纯小白的Python操作 PDF 笔记
开发语言·python·pdf
传奇开心果编程4 小时前
【传奇开心果系列】Flet框架实现的家庭记账本示例自定义模板
python·学习·ui·前端框架·自动化
王者鳜錸5 小时前
PYTHON让繁琐的工作自动化-PYTHON基础
python·microsoft·自动化
key_Go5 小时前
7.Ansible自动化之-实施任务控制
python·ansible·numpy
wyiyiyi13 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
mit6.82413 小时前
[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络
人工智能·python