Я хотел бы указать, какой метод прогнозирования использовать через аргумент функции.Что-то вроде:
from sklearn.linear_model import LinearRegression
def Process(data_y_train, data_x_train, data_x_test,
model=LinearRegression, predict_method=predict):
model_fit = model().fit(data_x_train, data_y_train)
predicted_values = model_fit.predict_method(data_x_test)
return predicted_values
Передача функции модели через arugment model
(например, LinearRegression, LogisticRegression) работает хорошо, но у меня возникают проблемы при передаче метода предиката (например, предиката ,gnett_proba) через аргументpredict_method
.
Когда я указываю predict_method=predict
, я получаю сообщение об ошибке: «имя» предикт «не определено»;если я укажу predict_method=LinearRegression.predict
, я получу сообщение о том, что у объекта '' LinearRegression 'нет атрибута' функция предиката ''.
За это обсуждение , я также пытался
import sklearn.linear_model.LinearRegression
def Process(data_y_train, data_x_train, data_x_test,
model_module='sklearn.linear_model.LinearRegression',
model=LinearRegression, predict_method='predict'):
model_fit = model().fit(data_x_train, data_y_train)
predict_call = getattr(__import__(model_module), predict_method)
predicted_values = model_fit.predict_call(data_x_test)
return predicted_values
Но здесь я получаю сообщение об ошибке: нет модуля с именем LinearRegression.
Спасибо за помощь!