我有:
df = pd.DataFrame({'A1': [0.1,0.5,3.0, 9.0], 'A2':[2.0,4.5,1.2,9.0]})
我想在数据框中添加 2 列来计算平均值和标准差,例如:
A1 A2 Mean Stddev
0 0.1 2.0 0 0
1 0.5 4.5 0 0
2 3.0 1.2 0 0
3 9.0 9.0 0 0
最佳答案
让我们尝试使用 mean
和 std
以及参数 axis=1
进行 assign
:
df.assign(Mean=df.mean(1), Stddev=df.std(1))
输出:
A1 A2 Mean Stddev
0 0.1 2.0 1.05 1.343503
1 0.5 4.5 2.50 2.828427
2 3.0 1.2 2.10 1.272792
3 9.0 9.0 9.00 0.000000
编辑评论/添加 CpK:
df.assign(mean=df.mean(1),stddev=df.std(1)).eval('Cpk = (mean + stddev) / A2')
输出:
A1 A2 mean stddev Cpk
0 0.1 2.0 1.05 1.343503 1.196751
1 0.5 4.5 2.50 2.828427 1.184095
2 3.0 1.2 2.10 1.272792 2.810660
3 9.0 9.0 9.00 0.000000 1.000000
关于python - 计算平均值和标准差列并将其添加到数据框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47146358/