我目前正在研究Kaggle的《泰坦尼克号生存预测》。
当我想将“性别”功能编码为0或1时出现问题。
我遵循了有关Pandas的官方文档,但这并没有帮助。
编辑:我注意到我写了“男”而不是“男”,但是在我改成“男”后仍然无法工作
非常感激!
最佳答案
尝试这个:
df['Sex'] = df['Sex'].replace(['male', 'female'], [1,0])
或这个
df['Sex'].replace(['male', 'female'], [1,0], inplace=True)
问题是您在执行分配时已将inplace = True设置为。这将更改系列的位置(即,它将更改Series对象本身),这将为整个系列返回None,这是错误的。因此,将inplace = False或进行赋值,但不能两者都赋值。
使用inplace = True会更改对象并返回None,而inplace = False则返回一个新对象。