csv Python- fillna方法添加.0

xa9qqrwz  于 2023-04-27  发布在  Python
关注(0)|答案(1)|浏览(111)

我想用零填充csv文件中的空单元格。我发现我可以用fillna方法来做到这一点。如果我这样做:

fillna(“0”)

如果单元格是空的,这将增加0,但如果单元格有,例如1,它被更改为1.0,我不想。有什么办法来解决它?

rkkpypqq

rkkpypqq1#

当你使用fillna("0")时,它会将数值转换为strings,这就是为什么你会看到1.0而不仅仅是1。只要用integer而不是strings来填充它:

import pandas as pd

df = pd.read_csv("your_csv_file.csv")

df.fillna(0, inplace=True)

float_cols = df.select_dtypes(include=['float64']).columns
convertible_cols = [col for col in float_cols if (df[col] % 1 == 0).all()]

df[convertible_cols] = df[convertible_cols].astype(int)

df.to_csv("updated_csv_file.csv", index=False)

相关问题