pandas求方差和标准差 Python pandas求方差和标准差的方法实例
不思量自难忘 人气:0准备
本文用到的表格内容如下:
先来看一下原始情形:
import pandas as pd df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df)
result:
分类 货品 实体店销售量 线上销售量 成本 售价
0 水果 苹果 34 234 12 45
1 家电 电视机 56 784 34 156
2 家电 冰箱 78 345 24 785
3 书籍 python从入门到放弃 25 34 13 89
4 水果 葡萄 789 56 7 398
1.求方差
1.1对全表进行操作
1.1.1求取每列的方差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df.var())
result:
实体店销售量 110164.3
线上销售量 92621.8
成本 118.5
售价 93741.3
dtype: float64
1.1.2 求取每行的方差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df.var(axis=1))
result:
0 10558.250000
1 126019.666667
2 120818.000000
3 1130.250000
4 131161.666667
dtype: float64
1.2 对单独的一行或者一列进行操作
1.2.1 求取单独某一列的方差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df['实体店销售量'].var())
result:
110164.3
1.2.2 求取单独某一行的方差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df.iloc[[0]].var())
result:
实体店销售量 NaN
线上销售量 NaN
成本 NaN
售价 NaN
dtype: float64
1.3 对多行或者多列进行操作
1.3.1 求取多列的方差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df[['实体店销售量', "线上销售量"]].var())
result:
实体店销售量 110164.3
线上销售量 92621.8
dtype: float64
1.3.2 求取多行的方差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df.iloc[[0, 1]].var())
result:
实体店销售量 242.0
线上销售量 151250.0
成本 242.0
售价 6160.5
dtype: float64
2 求标准差
2.1对全表进行操作
2.1.1对每一列求标准差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df.std())
result:
实体店销售量 331.910078
线上销售量 304.338299
成本 10.885771
售价 306.172010
dtype: float64
2.1.2 对每一行求标准差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df.std(axis=1))
result:
0 102.753345
1 354.992488
2 347.588838
3 33.619191
4 362.162487
dtype: float64
2.2 对单独的一行或者一列进行操作
2.2.1 对某一列求标准差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df['实体店销售量'].std())
result:
331.910078183835825
2.2.2 对某一行求标准差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df.iloc[[0]].std())
result:
实体店销售量 NaN
线上销售量 NaN
成本 NaN
售价 NaN
dtype: float64
2.3 对多行或者多列进行操作
2.3.1 对多列求标准差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df[['实体店销售量', "线上销售量"]].std())
result:
实体店销售量 331.910078
线上销售量 304.338299
dtype: float64
2.3.2 对多行求标准差
df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx') print(df.iloc[[0, 1]].std())
result:
实体店销售量 15.556349
线上销售量 388.908730
成本 15.556349
售价 78.488853
dtype: float64
总结
加载全部内容