pandas Windows 上的列溢出总和

pandas sum of column overflow on Windows

我正在开发必须在 Windows 服务器 (2012 R2) 中执行的应用程序。当我在本地 运行 它时(Win 7),它看起来不错,但是当我在服务器中 运行 它时,我得到了负面结果,而它应该是正面的:

DataFrame.column.sum()

我读到那是因为 python 2.7 和某些 windows 版本之间存在错误。 bug

问题,我的代码中有很多部分使用 pandas.col.sum() 并且其中一些列是 dtype = int64,有没有办法解决这个问题?也许在我阅读 df 时更改 dtype? 任何建议将不胜感激。谢谢!

我找到了基于此 answer

的解决方法
In [1]: import pandas as pd

In [2]: s = pd.Series([2**31])

In [3]: s.sum()
Out[3]: -2147483648

In [4]: from pandas.core import nanops

In [5]: nanops._USE_BOTTLENECK
Out[5]: True

In [6]: nanops._USE_BOTTLENECK = False

In [7]: s.sum()
Out[7]: 2147483648