📅  最后修改于: 2023-12-03 14:45:02.878000             🧑  作者: Mango
Pandas是Python数据分析库,提供了Series和DataFrame两种主要的数据结构。Series是一种一维数组的数据结构,类似于带有标签的NumPy数组。Pandas Series.std()是Series的一个方法,用于计算Series对象所有数值的标准差(Standard Deviation,简称std)。标准差是衡量数据分散程度的一种统计量,表明各个数据点相对于平均值的分散程度。
Pandas Series.std()方法的语法如下所示:
Series.std(axis=None, skipna=None, level=None, ddof=1, numeric_only=None, **kwargs)
参数解释如下:
Pandas Series.std()方法返回Series对象中所有数值的标准差,如果Series对象为空,返回NaN。
首先,生成一个包含随机数的Series对象:
import pandas as pd
import numpy as np
s = pd.Series(np.random.randn(5))
print(s)
输出:
0 0.751971
1 0.815085
2 0.124173
3 -1.438094
4 -0.696258
dtype: float64
然后,使用Series.std()方法计算标准差:
std = s.std()
print("标准差:", std)
输出:
标准差: 0.8702877906799738
如果Series对象中有缺失值,可以使用skipna参数排除:
s[0] = np.nan
std = s.std(skipna=True)
print("排除缺失值后的标准差:", std)
输出:
排除缺失值后的标准差: 1.0088230542823315
还可以指定计算标准差的轴方向:
df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
std_column = df.std() # 按列计算标准差
std_row = df.std(axis=1) # 按行计算标准差
print("按列计算标准差:", std_column)
print("按行计算标准差:", std_row)
输出:
按列计算标准差: A 0.5
B 0.5
dtype: float64
按行计算标准差: 0 1.5
1 1.5
dtype: float64
当然,各种参数的组合可以产生更多的用法,这里只做简单示例。