有人可以帮助任何现有的sklearn
分类编码器的Python类,将以下复选框打勾吗?
答案 0 :(得分:0)
我认为您正在寻找pandas.get_dummies
请参见以下示例。
df = pd.DataFrame({"col_a":['cat','dog','cat','mouse','mouse','cat'], 'col_b':[10,14,16,18,20,22], 'col_c':['a','a','a','b','b','a']})
# `drop_first` parameter will drop the one categorical column
df = pd.get_dummies(df, columns=['col_a','col_c'], drop_first=True)
print(df)
输出:
col_b col_a_dog col_a_mouse col_c_b
0 10 0 0 0
1 14 1 0 0
2 16 0 0 0
3 18 0 1 1
4 20 0 1 1
5 22 0 0 0
它涵盖了您提到的前两个条件。
对于第三种情况,您可以执行以下操作。
dummy_train = pd.get_dummies(train)
dummy_new = pd.get_dummies(new_data)
dummy_new.reindex(columns = dummy_train.columns, fill_value=0)
实际上,分类的任何新功能都不会进入分类器,但是我认为这不会引起问题,因为它不知道如何处理它们。