【发布时间】:2018-05-23 08:19:05
【问题描述】:
我在 Kaggle (https://www.kaggle.com/c/titanic/data) 上玩 Titanic 数据集,我想使用 sklearn.preprocessing 中的 LabelEncoder 将最初标记为“男性”或“女性”的 Sex 转换为“0”或“1” .我有以下四行代码,
import pandas as pd
from sklearn.preprocessing import LabelEncoder
df = pd.read_csv('titanic.csv')
df['Sex'] = LabelEncoder.fit_transform(df['Sex'])
但是当我运行它时,我收到了以下错误消息:
TypeError: fit_transform() missing 1 required positional argument: 'y'
错误来自第4行,即
df['Sex'] = LabelEncoder.fit_transform(df['Sex'])
我想知道这里出了什么问题。虽然我知道我也可以使用 map 进行转换,这可能更简单,但我仍然想知道我使用 LabelEncoder 有什么问题。
【问题讨论】:
标签: python-3.x pandas scikit-learn