二值化
sklearn.preprocessing.Binarizer
大于阈值映射为1,小于等于阈值映射为0
from sklearn.preprocessing import Binarizer
x=data.iloc[:,0].values.reshape(-1,1) # 一维数组转化为二维
transformer=Binarizer(threshold=30).fit_transform(x)
分箱
preprocessing.KBinsDiscretizer
参数:
n_bins 分箱个数 默认5
encode 默认“onehot" / ”onehot“,"ordinal","onehot-dense"
strategy 箱宽默认”quantile“
"uniform": 等宽分箱,每个箱子最大值与最小值之间的差为max-min/n_bins
”qunatile“:等位分箱,每个箱子内样本数量都相同
”kmeans“:聚类分箱,每个箱中的值到最近的以为K均值聚类的簇心距离相同
from sklearn.preprocessing import KBinDiscretizer
kbd=KBinDiscretizer(n_bins=3,encode='ordinal',strategy='uniform')
kbd.fit_trainform(x)