Hi! 大家好,我是Eric,这次要来用Python做回归模型。
1. 载入套件。
import statsmodels.api as sm #回归模型套件
import numpy as np #资料处理套件
import pandas as pd #资料处理套件
2. 输入资料。
df0 = pd.read_csv("TaipeiAllBus 0105.csv") #输入资料
df0
3. 资料前处理。
df0_X = df0.drop("volumn", axis=1) #将作为y的变数volunm删去,并另存为x
df0_X1 = df0_X.drop("transfer01", axis=1) #之後要做相关系数,而因为transfer01变数为虚拟变数,故不须纳入做相关系数,故删除
df0_y = df0[["volumn"]] #制作变数y
4. 相关系数检验。
rDf0 = df0_X1.corr() #查看数据间的相关系数
print(rDf0)
%matplotlib inline
sns.set(font_scale=1.5)
sns.set_context({"figure.figsize":(8,8)})
sns.heatmap(data = rDf0, square = True, cmap="RdBu_r", annot = True)
5. 检视资料分布情形。
import seaborn as sns #载入分布图形套件
import matplotlib.pyplot as plt #载入画图套件
sns.pairplot(df0, x_vars=["People","MRTpax", "shift", "kilometer"], y_vars='volumn', size=7, aspect=0.8, kind='reg')
plt.show()
6. 建模。
df0_X = sm.add_constant(df0_X) #增加模型的常数,使更为符合回归模型
model0 = sm.OLS(df0_y, df0_X) #OLS回归
results0 = model0.fit()
print(results0.summary())
7. 大功告成。
下图就是回归的结果,可以看到各个x变数的系数,以及P值,检验哪些x变数对於y具有显着影响,另外也可由R2检验模型的解释能力。
机器学习可以分成监督式学习与非监督式学习,这部分我们在第四天有稍微提到过,这边就不多做说明了,今天我...
前言: 因为最近需要用到Python,顺便纪录一下自己学习的过程 正文: 官方网站: https:/...
今天大概的进度要进到Controlling Program Flow,不过我自己对於这个章节好像没有...
嗨!我是莉莉,目前是个软件工程师。去年因为公司内部任务接触到和资安相关的议题,开始对资讯安全感兴趣、...
Fluent bit回顾 Log Agent - Fluent Bit 简介 Log Agent -...