from sklearn.preprocessing import Imputer
imputer = Imputer(missing_values='NaN', strategy='mean',axis=0)
imputer = imputer.fit(X[:, 1:3])
X[:, 1:3]=imputer.transform(X[:, 1:3])
你能帮我知道上面代码的作用吗?我对Imputer一无所知。请帮助!
答案 0 :(得分:6)
令人困惑的部分适合和变换。
#here fit method will calculate the required parameters (In this case mean)
#and store it in the impute object
imputer = imputer.fit(X[:, 1:3])
X[:, 1:3]=imputer.transform(X[:, 1:3])
#imputer.transform will actually do the work of replacement of nan with mean.
#This can be done in one step using fit_transform
答案 1 :(得分:2)
Imputer用于替换缺失值。
# Imports library
from sklearn.preprocessing import Imputer
# Create a new instance of the Imputer object
# Missing values are replaced with NaN
# Missing values are replaced by the mean later on
# The axis determines whether you want to move column or row wise
imputer = Imputer(missing_values='NaN', strategy='mean',axis=0)
# Fit the imputer to X
imputer = imputer.fit(X[:, 1:3])
# Replace in the original matrix X
# with the new values after the transformation of X
X[:, 1:3]=imputer.transform(X[:, 1:3])
我为你注释了代码,我希望这会更有意义。您需要将X视为必须转换的矩阵,以便不再有NaN(缺少值)。
请参阅文档了解更多information。
答案 2 :(得分:0)
您的评论告诉您与众不同。就是说,如果您不使用imputer.fit,则无法使用某些方法(例如均值或中位数)来替换nan。要应用此过程,您需要在imputer.fit之后使用imputer.transform,然后,您将获得一个没有nan值的新数据集。
答案 3 :(得分:0)
据我所知 从库中导入特定的类
Material(
color: Colors.grey[300],
child: ListTile(
title: Text('Hello')
)
);
根据我们的个性化数据创建一个处理数据的类的对象
from sklearn.preprocessing import Imputer
将x应用于矩阵(如对数据应用函数)
例如,让运算符e应用于数据d imputer = Imputer(missing_values='NaN', strategy='mean',axis=0)
返回ed Imputer.fit
现在imputer = imputer.fit(X[:, 1:3])
计算ed的值并将其分配给给定的矩阵
Imputer.transform