函数如下:
def lin_fit():
data=pd.read_csv('Advertising.csv')
x=data[:,1]
y=data[:,3]
output_array= np.zeros(12)
for j in range(2,14):
model_fit_new=sp.polyfit(x,y,j, full=True)
print(model_fit_new[1])
output_array[j-2]= model_fit_new[1]
return output_array
管道功能:内置函数Imputer和我自己的函数lin_fit
estimator = Pipeline([("imputer", Imputer(missing_values=0,
strategy="mean",
axis=0)), ("linear_fit", lin_fit())])
我收到以下错误:
类型错误:不可哈希类型
从管道文档中:
"按顺序应用转换列表和最终估计器。管道的中间步骤必须是"转换",也就是说,它们必须实现拟合和转换方法。最终估算器只需要实现拟合度。
所以你必须实现这些方法。您可能还必须坚持其他 sklearn 约定,例如从 BaseEstimator 继承,并确保所有参数都明确列在类的 init 中。