熊猫标准偏差奇迹

问题描述 投票:4回答:1

这是我的代码:

import pandas as pd
df = pd.DataFrame({'Test': [861166021755746, 861166021755746, 861166021755746]})
print(df.describe())

这里是输出(请注意std的值):

Test
count  3.000000e+00
mean   8.611660e+14
std    1.186328e+07
min    8.611660e+14
25%    8.611660e+14
50%    8.611660e+14
75%    8.611660e+14
max    8.611660e+14

std的正确值为零,因为所有三个数字都相同。

现在我将数据框放在上面,并将第一个数字8替换为数字9

df = pd.DataFrame({'Test': [961166021755746, 961166021755746, 961166021755746]})
print(df.describe())

现在的输出是(请注意标准编号):

Test
count  3.000000e+00
mean   9.611660e+14
std    0.000000e+00
min    9.611660e+14
25%    9.611660e+14
50%    9.611660e+14
75%    9.611660e+14
max    9.611660e+14

我找到神奇的数字还是怎么回事?

pandas standard-deviation
1个回答
0
投票

此问题确实是与方差计算错误相关的错误,并且已在版本0.17.0中解决。如果使用任何以前的版本,则应将其更新为较新的版本,或按照注释在环境中安装bottleneck的建议进行安装。

© www.soinside.com 2019 - 2024. All rights reserved.