Поскольку ваша причина заключается в том, что «это просто разные наборы данных с одинаковыми функциями», я бы порекомендовал просто добавить наборы данных и создать одну модель для всех данных.
Но если по какой-то причине это невозможно, вы можете сделать это вручную, задав для атрибутов coef_
и intercept_
третьей линейной модели средние значения первых двух, например:
reg = LinearRegression()
reg.coef_ = np.array([np.mean(t) for t in zip(reg_1.coef_, reg_2.coef_)])
reg.intercept_ = np.mean([reg_1.intercept_, reg_2.intercept_])
Тогда вы можете просто использовать метод reg.predict(X3)
как обычно, чтобы делать прогнозы на основе комбинированных средних значений для двух линейных моделей.
Однако в этом подходе есть опасности, если для Например, один из наборов данных, используемых для подгонки к исходным моделям, намного больше, чем другой, тогда в объединенной модели члены перехвата и коэффициента меньшего набора данных будут перевешены, и вы, вероятно, захотите сделать некоторое взвешивание при усреднении перехвата. и коэффициент слагаемых.