Python 正在尝试将数据帧中的某些列从float转换为int

Python 正在尝试将数据帧中的某些列从float转换为int,python,pandas,Python,Pandas,我正在尝试将数据帧中的一半列从float类型转换为int类型 这是我正在使用的代码。我的数据帧的名称是“流派十大”。共有45列。都是浮点64格式。我想将前27列更改为int genre_top10.iloc[:,0:27] = genre_top10.iloc[:,0:27].astype(int) genre_top10 但是,即使运行了下面的代码,我仍然得到了浮动。col没有转换为int 这是原始数据帧的一部分 CVotes10 CVotes09 CVo

我正在尝试将数据帧中的一半列从float类型转换为int类型

这是我正在使用的代码。我的数据帧的名称是“流派十大”。共有45列。都是浮点64格式。我想将前27列更改为int

genre_top10.iloc[:,0:27] = genre_top10.iloc[:,0:27].astype(int)
genre_top10
但是,即使运行了下面的代码,我仍然得到了浮动。col没有转换为int

这是原始数据帧的一部分

           CVotes10    CVotes09     CVotes08
Action     102144.10    114433.19   150895.32   
Adventure   94596.29    105636.63   138482.32   
Animation   61960.18    72566.09    104837.64   
这是在运行我的代码之后

            CVotes10    CVotes09    CVotes08    
Action      102144.0    114433.0    150895.0    
Adventure   94596.0     105636.0    138482.0
Animation   61960.0      72566.0    104837.0

试用了你的代码,在我这方面效果很好。柱是否可能不是完全浮动的?也许可以检查列的数据类型?请提供一个。DF是如何建造的?可能有一种更简单/更早的方法来更改数据类型。您不能有一个包含int和float的列(当然可以,但您必须创建dtype对象,这是次优的)@JoranBeasley-OP不是试图在一个列中混合int和float-切片是跨列的,适用于所有行。正如@MichaelDelgado所说,您的数据中可能有
NaN
。请尝试
astype('Int64')
以查看它是否适合您。请尝试您的代码,在我这方面效果良好。柱是否可能不是完全浮动的?也许可以检查列的数据类型?请提供一个。DF是如何建造的?可能有一种更简单/更早的方法来更改数据类型。您不能有一个包含int和float的列(当然可以,但您必须创建dtype对象,这是次优的)@JoranBeasley-OP不是试图在一个列中混合int和float-切片是跨列的,适用于所有行。正如@MichaelDelgado所说,您的数据中可能有
NaN
。尝试
astype('Int64')
看看它是否适合您。