功能如下:
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())])
我收到以下错误:
TypeError:不可用类型
答案 0 :(得分:0)
来自管道文档:
“顺序应用变换列表和最终估算器。管道的中间步骤必须是'变换',即它们必须实现拟合和变换方法。最终估算器只需要实现拟合。”
所以你必须实现这些方法。您可能还必须遵守其他sklearn惯例,例如继承自BaseEstimator,并确保所有参数都明确列在该类的 init 中。