Python 多元线性回归
分析目的
分析空气中主要污染物浓度与空气指数之间的关系
分析数据
天气污染物浓度的数据集,该数据集源自天气后报网站上爬取的数据,为北京2013年10月28日到2016年1月31日的空气污染物浓度的数据。包括空气质量等级、AQI指数和当天排名。
import pandas as pd import numpy as np import matplotlib.pyplot as plt %matplotlib inline import statsmodels.api as sm
线性回归
1.数据预处理
data = pd.read_csv("beijing.csv",index_col = 0) data.head()
X = data.iloc[:,2:8] X = sm.add_constant(X) y = data.iloc[:,0] print(X.head())
2.建立模型
model1 = sm.OLS(y,X) #建立模型 result = model1.fit() #训练模型 print(result.summary())
result.f_pvalue #检验线性回归关系显著性
result.params #回归系数
改进模型
由于So2与Co的p值大于0.05,所以排除这两个变量,重新建立模型
data = pd.read_csv("beijing.csv",index_col = 0) data.head()
X = data.iloc[:,[2,3,5,7]] X = sm.add_constant(X) y = data.iloc[:,0] print(X.head())
model2 = sm.OLS(y,X) #建立模型 result = model2.fit() #训练模型 print(result.summary())