首页 > 解决方案 > pandas DataFrame 不处理小数点数字

问题描述

我正在使用一个数据框,我用它对每个值执行数学运算,将小数除以大数。这应该给我留下非常小的小数点数字,但我的数据框只是将它们转换为 0。

例如,我将 2577 除以 3022356,得到 0.0008526460814013968,但数据框中的条目仅为 0。

我能做些什么来让数据框显示正确的值吗?

我的代码中的示例:

for index, row in data.iterrows():
    for key in row.keys():
        row[key] = float(row[key]) / float(row['total'])

    data.iloc[index] = row

这会遍历每一行,遍历每一行中除了最后两个之外的所有键。然后用总计决定每个值。我添加了float()基于建议,但放回数据中的值只是 0,而不是正确的值。

标签: pythonpandas

解决方案


您可以将分子和分母设置为浮点数以确保转换正确,因此它将是 float(2577)/float(3022356)。


推荐阅读