假设我有一个像下面这样的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'])
Run Code Online (Sandbox Code Playgroud)
'categorical_1'的值是A,B或C,所以我最终在dummy_values中有3列.但是,categorical_1实际上可以采用值A,B,C,D或E,因此没有为值D或E表示的列.
在RI中,在指定该列时会指定级别 - 是否有相应的方法对Pandas执行此操作,还是需要手动处理?
在我看来,有必要考虑测试数据,在训练集中使用的值之外的那一列的值,但作为机器学习的新手,也许这是不必要的,所以我对不同的方式开放接近这个.