无法将浮点数转换为整数

Unable to convert floats to ints

我有一个关于电影的数据集,其中有一列对应于每部电影的发行年份。这些数字目前都是浮点数,我正在尝试将它们转换为整数。

这是我为此编写的代码:

if isinstance (data['Year'], float):
    for idx, i in enumerate(data['Year']):
        data['Year'][idx]= int(i)
else:
    pass

代码运行。但是,每当我尝试打印列中每个元素的数据类型时(例如:

for i in data['Year]:
print(type(i))

我得到的结果还是全是浮点数

有人知道为什么这行不通吗?帮助将不胜感激!

我认为 data['Year'] 在您的代码中是 list 而不是 float。尝试

data = {'Year': [1990.0, 1991, 2000.0]}

for idx, i in enumerate(data['Year']):
    if isinstance(i, float):
        data['Year'][idx]= int(i)

for i in data['Year']:
    print(type(i))