我写了以下函数。目的是获得模型,该模型给出pvalue <0.05的正确特征集 该函数似乎不是一致的结果。在极端情况下,它会给出p值大于0.9的结果 有人可以帮我吗?
def run_reg(X,Y,df):
#Now lets start the regression model
lreg = sm.OLS(Y,X)
feature_count=1
while(feature_count !=0):
model = lreg.fit()
pvalues = model.pvalues
print(pvalues)
feature_count= len(pvalues[pvalues > 0.05] )
print(pvalues)
if(feature_count != 0):
pvalues = pvalues[pvalues < 0.05]
pvalues = pvalues.drop('const',axis=0)
X = df[pvalues.index]
X = sm.add_constant(X)
lreg = run_reg(X,Y)
return model