Python中l逻辑回归的β系数和p值
我想用python执行一个简单的逻辑回归(1个因变量,1个自变量)。我在python中看到的所有关于逻辑回归的文档都是用来开发预测模型的。我想更多地从统计方面使用它。如何在python上找到简单逻辑回归的Python中l逻辑回归的β系数和p值,python,regression,logistic-regression,Python,Regression,Logistic Regression,我想用python执行一个简单的逻辑回归(1个因变量,1个自变量)。我在python中看到的所有关于逻辑回归的文档都是用来开发预测模型的。我想更多地从统计方面使用它。如何在python上找到简单逻辑回归的优势比、p值和置信区间 X = df[predictor] y = df[binary_outcome] model = LogisticRegression() model.fit(X,y) print(#model_stats) 如果理想输出为比值比,p值,以及置信区间,我假设您使用的
优势比
、p值
和置信区间
X = df[predictor]
y = df[binary_outcome]
model = LogisticRegression()
model.fit(X,y)
print(#model_stats)
如果理想输出为
比值比
,p值
,以及置信区间
,我假设您使用的是LogisticRegression()
fromsklearn
。你不能从中估计p值的置信区间。您可以使用statsmodels,还请注意,不带公式的statsmodels与sklearn有点不同(请参见@Josef的注释),因此您需要使用sm.add_constant()
:
该系数以对数优势为单位,您可以简单地将其转换为优势比。[0.025 0.975]列是对数优势的95%置信区间。查看我假设您正在使用
sklearn
中的LogisticRegression()
。你不能从中估计p值的置信区间。您可以使用statsmodels,还请注意,不带公式的statsmodels与sklearn有点不同(请参见@Josef的注释),因此您需要使用sm.add_constant()
:
该系数以对数优势为单位,您可以简单地将其转换为优势比。[0.025 0.975]列是对数优势的95%置信区间。查看你的问题是什么?欢迎来到SO。这不是一个讨论论坛或教程。请花点时间阅读和阅读该页面上的其他链接。你的问题是什么?欢迎来到SO。这不是一个讨论论坛或教程。请花时间阅读和阅读该页面上的其他链接。注意,不使用公式时,statsmodels不会自动添加常量。是的,我错过了。感谢您指出,statsmodels在不使用公式时不会自动添加常量。是的,我错过了。谢谢你指出这一点
import statsmodels.api as sm
y = np.random.choice([0,1],50)
x = np.random.normal(0,1,50)
model = sm.GLM(y, sm.add_constant(x), family=sm.families.Binomial())
results = model.fit()
results.summary()
Generalized Linear Model Regression Results
Dep. Variable: y No. Observations: 50
Model: GLM Df Residuals: 48
Model Family: Binomial Df Model: 1
Link Function: logit Scale: 1.0000
Method: IRLS Log-Likelihood: -33.125
Date: Sat, 09 Jan 2021 Deviance: 66.250
Time: 16:21:51 Pearson chi2: 50.1
No. Iterations: 4
Covariance Type: nonrobust
coef std err z P>|z| [0.025 0.975]
const -0.0908 0.309 -0.294 0.769 -0.696 0.514
x1 0.5975 0.361 1.653 0.098 -0.111 1.306