gpt4 book ai didi

python - 如何在 Windows Server 2012 上使用 "OverflowError: Python int too large to convert to C long"错误进行转换?

转载 作者:太空狗 更新时间:2023-10-29 21:14:47 30 4
gpt4 key购买 nike

在 Anaconda Python 2.7.12、Pandas 18.1、Windows Server 2012 上运行时:

df['z'] = df['y'].str.replace(' ', '').astype(int)

我收到这个错误:

OverflowError: Python int too large to convert to C long

我在 MacOS 10.11 或 Ubuntu 14.04 上没有收到此错误。我从其他地方读到,Windows C++ 编译器对 long 的定义与类 Unix 操作系统不同。如果是这样,我如何在 Windows 上运行它?

此外,data.txt 的大小仅为 172 KB。如果有帮助,data.txt 采用以下形式:

x|y
99999917|099999927 9991
99999911|999999979 9994
99999912|999999902 9992

最佳答案

int 被 numpy 解释为 np.int_ dtype,它对应于 C 整数。在 Windows 上,即使在 64 位系统上,这也是一个 32 位整数。

因此,如果您需要转换更大的值,请使用 指定一个 64 位整数

.astype('int64')

关于python - 如何在 Windows Server 2012 上使用 "OverflowError: Python int too large to convert to C long"错误进行转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39879047/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com