【问题标题】:pandas.DataFrame.replace doesn't seems to workpandas.DataFrame.replace 似乎不起作用
【发布时间】:2019-08-01 00:48:51
【问题描述】:

我目前正在研究 Kaggle 的泰坦尼克号生存预测。 当我想将“性别”特征编码为 0 或 1 时出现问题。 我已经关注了 Pandas 的官方文档,但它没有帮助。

编辑:我注意到我写的是“男性”而不是“男性”,但在我改为“男性”后仍然无法正常工作

非常感谢!

【问题讨论】:

标签: python pandas dataframe machine-learning


【解决方案1】:

试试这个:

df['Sex'] = df['Sex'].replace(['male', 'female'], [1,0])

或者这个

df['Sex'].replace(['male', 'female'], [1,0], inplace=True)

问题是您在执行分配时设置了 inplace=True。这将改变系列(即,它将改变系列对象本身),它为整个系列返回 None ,这是错误的。所以把 inplace=False,或者做一个分配,但不能两者兼而有之。 使用 inplace=True 更改对象并返回 None,而 inplace=False 返回一个新对象。

【讨论】:

    猜你喜欢
    • 2016-11-29
    • 2016-02-01
    • 2020-09-23
    • 2010-12-05
    • 2011-06-14
    • 2015-01-10
    • 2016-02-24
    • 2011-01-18
    • 2018-06-20
    相关资源
    最近更新 更多