特征分为:连续数值类型和分类类型。其中连续数值类型通常需要做归一化。 分类类型必须因子化
1、将分类变量转换为数值编号,才可以被处理
import pandas as pd
import numpy as np
from sklearn import preprocessing
用LabelEncoder对不同的犯罪类型编号
leCrime = preprocessing.LabelEncoder()
crime = leCrime.fit_transform(train.Category)
2、将分类特征因子化
为什么要因子化:
对于类型因变量。如果仅仅采用数值编码,那最大的问题就是在这种处理方式中,各种类别的特征都被看成是有序的,这显然是非常不符合实际场景的,所以因子化
方法有两种:
1) pandas 的 get_dummies()方法 ,
days = pd.get_dummies(train.DayOfWeek)
district = pd.get_dummies(train.PdDistrict)
dummies_Cabin = pd.get_dummies(data_train[‘Cabin’], prefix= ‘Cabin’)
2) sklearn.preprocessing.OneHotEncoder方法
enc =