statsmodel获取resid_studentized_external

问题描述 投票:0回答:1

我正在为WLS使用statsmodels库。我试图获取残差,但它返回nan的值列表。有谁知道这是什么问题。 x和y列的数据帧中的值是浮点型。

import pandas as pd
import statsmodels.formula.api as smf

res = smf.wls('y ~ x', data=df).fit()
#get residuals
print(OLSInfluence(res).resid_studentized_external)

我发现它可以在ols上运行,但是我需要wls。因此,下面的代码返回ols的残值

res = smf.ols('y ~ x', data=df, weights = df["weight"]).fit()
#get residuals
print(OLSInfluence(res).resid_studentized_external)
python statsmodels
1个回答
0
投票

我尝试了下面的代码,这给了我正确的结果

import pandas as pd
import statsmodels.api as smsm.ols

wls_model = sm.WLS(list(df['y']), sm.add_constant(list(df['x'])), weights=df['weight'])
res = sm.OLS(wls_model.wendog, wls_model.wexog).fit()
#get residuals
print(OLSInfluence(res).resid_studentized_external)
© www.soinside.com 2019 - 2024. All rights reserved.