sklearn特征处理API
sklearn. preprocessing
1.sklearn归一化API:
from sklearn.preprocessing import MinMaxScaler
#例
def mm():
"""
归一化处理
:return: NOne
"""
mm = MinMaxScaler(feature_range=(2, 3))
data = mm.fit_transform([[90,2,10,40],[60,4,15,45],[75,3,13,46]])
print(data)
return None
⽬的:是的某⼀个特征对最终结果不会造成更⼤影响
缺点:异常点的数据对结果影响较大。注意在特定场景下最大值最小值是变化的,另外,最大值与最小值非常容易受异常点影响,所以这种方法鲁棒性较差,只适合传统精确小数据场景
from sklearn.preprocessing import StandardScaler
def stand():
"""
标准化缩放
:return:
"""
std = StandardScaler()
data = std.fit_transform([[ 1., -1., 3.],[ 2., 4., 2.],[ 4., 6., -1.]])
print(data)
return None
在已有样本足够多的情况下比较稳定,适合现代嘈杂大数据场景
from sklearn.impute import SimpleImputer
def im():
"""
缺失值处理
:return:NOne
"""
# NaN, nan
im = Imputer(missing_values='NaN', strategy='mean', axis=0)
data = im.fit_transform([[1, 2], [np.nan, 3], [7, 6]])
print(data)
return None
axis=0 按列