我有一个数据框,其中一列是"object"数据类型。我使用pd.to_numeric()
和 errors='coerce'
将其转换为"float"数据类型。但是,转换后的列中所有条目都显示为NaN。如果我将errors='ignore'
,则不会将任何条目转换为浮点数。我是否遗漏了什么?以下是代码片段:
pd.to_numeric(df['gender'],errors = 'coerce')
列
df['gender']
包含 'Male' 和 'Female' 条目。我想将它们转换为 'float' 数据类型。谢谢!
map
也可以,只是手动一点。我还解释了为什么to_numeric
在这里不起作用。 - tdymap
是最简单的方法。如果您有大量类别+ NaN,则可以自动进行factorize
并链接replace
,例如pd.Series(df['gender'].factorize()[0]).replace(-1, np.nan)
。 - tdy