gpt4 book ai didi

python - 如何将对象数据类型转换为在 Pandas 中 float

转载 作者:行者123 更新时间:2023-12-05 04:39:00 27 4
gpt4 key购买 nike

我有一个数据框,其中一列是“对象”数据类型。我使用 pd.to_numeric()errors = 'coerce' 将其转换为“float”数据类型。但是,转换后的列对于所有条目都显示为 NaN。如果我让 errors = 'ignore',则所有条目都不会转换为 float 。有什么我想念的吗?以下是代码片段:

pd.to_numeric(df['gender'],errors = 'coerce')

df['gender'] 列包含“男性”和“女性”条目。我想将它们转换为“浮点”数据类型。

谢谢!

最佳答案

to_numeric 只能转换数字类型的东西。例如,它可以将字符串 '10' 转换为数字 10,但不能将 'Male' 之类的内容转换为数字.


改为使用 pd.factorize :

df['gender'] = pd.factorize(df['gender'])[0].astype(float)

Series.factorize :

df['gender'] = df['gender'].factorize()[0].astype(float)

factorize 的第一个元素包含整数代码,因此我们将它们转换为astype(float)。


或者如您所说,Series.map也有效:

df['gender'] = df['gender'].map({'Male': 0, 'Female': 1}).astype(float)

关于python - 如何将对象数据类型转换为在 Pandas 中 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70491759/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com