How to calculate the 99% confidence interval for the slope in a linear regression model in python? How to calculate the 99% confidence interval for the slope in a linear regression model in python? numpy numpy

How to calculate the 99% confidence interval for the slope in a linear regression model in python?


StatsModels' RegressionResults has a conf_int() method. Here an example using it (minimally modified version of their Ordinary Least Squares example):

import numpy as np, statsmodels.api as smnsample = 100x = np.linspace(0, 10, nsample)X = np.column_stack((x, x**2))beta = np.array([1, 0.1, 10])e = np.random.normal(size=nsample)X = sm.add_constant(X)y = np.dot(X, beta) + emod = sm.OLS(y, X)res = mod.fit()print res.conf_int(0.01)   # 99% confidence interval


You can use scipy's linear regression, which does calculate the r/p value and standard error : http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.stats.linregress.html

EDIT : as underlines by Brian, I had the code from scipy documentation:

from scipy import statsimport numpy as npx = np.random.random(10)y = np.random.random(10) slope, intercept, r_value, p_value, std_err = stats.linregress(x,y)confidence_interval = 2.58*std_err