📅  最后修改于: 2023-12-03 15:19:21.206000             🧑  作者: Mango
DataFrame.sem()
是Pandas中DataFrame对象的一个函数,用于计算每个数值列的标准误(标准误差)。标准误是指样本抽取自总体中的一个样本,在数值上与总体存在一定差异,使用这个样本的平均值来估计整个总体的平均值,因此样本平均值的大小反映了总体平均值的不确定性,标准误就是反映平均值不确定性的一个指标。
DataFrame.sem(axis=None, skipna=None, level=None, ddof=1, numeric_only=None)
axis
: {0 or 'index', 1 or 'columns'}, 指定计算标准误(标准误差)的方向,默认行方向(axis=0)。skipna
: bool, 是否忽略NaN值,默认True。level
: int or str, 指定在哪个级别上计算标准误,默认None,即在所有的级别上都进行计算。ddof
: int, 自由度校正,默认1。numeric_only
: bool, 是否只计算数值列的标准误,默认True。axis=0
,按列计算标准误(默认)。axis=1
,按行计算标准误。skipna=True
,忽略NaN值。skipna=False
,不忽略NaN值。level=None
,在所有的级别上计算。ddof=1
,自由度校正。numeric_only=True
,只计算数值列的标准误。numeric_only=False
,计算所有列的标准误。DataFrame类型,返回每一列的标准误,如果是axis=1,返回每一行的标准误。
import pandas as pd
data = {'A': [1, 3, 5, 7], 'B': [2, 4, 6, 8], 'C': [1, 3, 5, None]}
df = pd.DataFrame(data)
print(df.sem()) # 按照默认方向(axis=0)计算所有数值列的标准误
输出结果:
A 2.236068
B 2.236068
C 1.154701
dtype: float64
print(df.sem(axis=1)) # 按行计算每一行的标准误
输出结果:
0 0.471405
1 0.471405
2 0.471405
3 0.471405
dtype: float64