Python sklearn的管道函数用于自建函数
功能如下:Python sklearn的管道函数用于自建函数,python,scikit-learn,Python,Scikit Learn,功能如下: 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
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
管道功能:内置函数输入器和我自己的函数LINU fit
estimator = Pipeline([("imputer", Imputer(missing_values=0,
strategy="mean",
axis=0)), ("linear_fit", lin_fit())])
我得到以下错误:
TypeError:不可损坏的类型
从管道文档: 按顺序应用变换列表和最终估计器。管道的中间步骤必须是“变换”,也就是说,它们必须实现拟合和变换方法。最终估计器只需要实现拟合
所以你必须实现这些方法。您可能还必须遵守其他sklearn约定,例如继承自BaseEstimator,并确保在类的init中明确列出所有参数。来自管道文档: 按顺序应用变换列表和最终估计器。管道的中间步骤必须是“变换”,也就是说,它们必须实现拟合和变换方法。最终估计器只需要实现拟合 所以你必须实现这些方法。您可能还必须遵守其他sklearn约定,例如继承自BaseEstimator,并确保在类的init中明确列出所有参数