【发布时间】:2013-08-19 07:02:13
【问题描述】:
假设我有一个如下所示的 Pandas DataFrame,并且我正在编码 categorical_1 以在 scikit-learn 中进行训练:
data = {'numeric_1':[12.1, 3.2, 5.5, 6.8, 9.9],
'categorical_1':['A', 'B', 'C', 'B', 'B']}
frame = pd.DataFrame(data)
dummy_values = pd.get_dummies(data['categorical_1'])
“categorical_1”的值是 A、B 或 C,所以我最终在 dummy_values 中有 3 列。但是,categorical_1 实际上可以采用值 A、B、C、D 或 E,因此没有代表值 D 或 E 的列。
在 R 中,我会在分解该列时指定级别 - 是否有相应的方法可以使用 Pandas 执行此操作,或者我是否需要手动处理?
在我看来,这是必要的,因为该列的值超出了训练集中使用的值,但作为机器学习的新手,也许这没有必要,所以我愿意接受不同的方法来解决这个问题。
【问题讨论】:
标签: python machine-learning pandas