如何在Python中添加回归函数,或根据给定系数创建新的回归函数?

1 投票
1 回答
548 浏览
提问于 2025-04-18 03:57

我有一个回归函数,g1(x) = 5x - 1,这是针对一个数据点的。还有另一个回归函数,g2(x) = 3x + 4

我想把这两个模型结合起来,创建一个最终的回归模型,叫做G(x)

这意味着:

G(x) = g1(x) + g2(x) 
=> 5x - 1 + 3x + 4
=> 8x +3 

我的问题是,怎么在Python中做到这一点?如果我的数据集是X,我使用statsmodels像这样:

import statsmodels.api as sm
from statsmodels.sandbox.regression.predstd import wls_prediction_std
import numpy as np

mod_wls = sm.WLS(y, X)
res_wls = mod_wls.fit()
print res_wls.params

这样可以给我回归函数的系数,这些系数适合数据X。为了把这两个函数加起来,我可以很容易地拿到每个函数的系数,然后把它们加起来,得到一个新的回归函数的系数,比如G(x)。但是现在我得到了自己的系数,怎么把它们转换成一个回归函数,并用它们来预测新的数据呢?因为据我所知,模型必须“拟合”到数据上,才能用于预测。

或者有没有办法直接把回归函数加起来?因为在我的算法中,我会逐步添加这些函数。

1 个回答

1

这个模型生成的预测结果应该是完全准确的。

np.dot(X_test, res_wls.params)

所以,如果你想把几个模型的结果加在一起,比如说:

summed_params = np.array([res_wls.params for res_wls in all_my_res_wls]).sum(axis=0)

你的预测结果应该是:

np.dot(X_test, summed_params)

在这种情况下,就不需要使用估计器内置的函数了。

撰写回答