我正在尝试在 xy 数据的简单测试集上使用来自 statsmodels 的稳健线性模型。但是,作为 model.params 的返回值,我只得到一个值。如何获得拟合的斜率和截距?最小的例子(我试图从拟合中排除异常值,因此 rlm):
import statsmodels.api as sm
a = np.array([1,2,3,4,5,6,7,8,9])
b = 2. * np.array([1,2,9,4,5,6,7,13,9])
model = sm.RLM(b, a, M=sm.robust.norms.HuberT()).fit()
model.params
最后一行只返回array([2.])
。我用同一个包中的 ols 尝试了同样的事情,这确实给了我拦截和斜率作为回报。