Pandas 熊猫aType给出了一个奇怪的结果

Pandas 熊猫aType给出了一个奇怪的结果,pandas,dataframe,casting,Pandas,Dataframe,Casting,我试图将一个2M长的float列转换成整数 如果我尝试替换该列,则会得到错误的结果: df3[['DISPATCHINTERVAL']]=df3[['DISPATCHINTERVAL']].astype(int) 20190930241.0变为-2147483648 相反,如果我使用applymap elementwise,它可以工作: df3[['DISPATCHINTERVAL']]=df3[['DISPATCHINTERVAL']].applymap(np.int64) 2019093

我试图将一个2M长的float列转换成整数

如果我尝试替换该列,则会得到错误的结果:

df3[['DISPATCHINTERVAL']]=df3[['DISPATCHINTERVAL']].astype(int)
20190930241.0变为-2147483648

相反,如果我使用applymap elementwise,它可以工作:

df3[['DISPATCHINTERVAL']]=df3[['DISPATCHINTERVAL']].applymap(np.int64)
20190930241.0变为20190930241

但是它比较慢

为什么?

在您的系统中,int是32位。你可以试试int64


你能试试df3[['DISPATCHINTERVAL']]=df3[['DISPATCHINTERVAL']]吗。输入'int64'
df3[['DISPATCHINTERVAL']]=df3[['DISPATCHINTERVAL']].astype('int64')
df3[['DISPATCHINTERVAL']]=df3[['DISPATCHINTERVAL']].astype(np.int64)