多元线性回归

多元线性回归是想在简单线性回归的基础上,建立两个或者两个以上的解释变量与反应变量之间的关系。它的步骤和一元线性回归相似。

四个假设条件

线性关系:要求解释变量与反应变量之间是是线性关系。

方差齐性:保证方差的均匀性

残差正太性:残差服从正太分布

多重共线性:假设个解释变量之间没有多重共线性

逐步回归:

不一定每一个变量与反应变量的相关性都十分高,当变量太多时,可以使用逐步回归来筛选变量。

“假”变量的处理:

对于分类变量可以进行编码。以及改进多元回归模型,使之能预测分类数据。

setp 1:数据预处理

1、导入必须的包 pandas、numpy、matplot、sklearn

2、导入数据集 read_csv()

3、进行数据清洗(异常值处理)

4、处理"假"数据(如果有必要)

5、特征缩放(和简单线性回归相同)

import pandas as pd

import numpy as np

dataset = pd.read_csv("50_Startups.csv")

X = dataset.iloc[:,:-1].values

Y = dataset.iloc[:,4].values

from sklearn.preprocessing import LabelEncoder,OneHotEncoder

labelencoder = LabelEncoder()

X[:,3]=labelencoder.fit_transform(X[:,3])

onehotencoder = OneHotEncoder(categorical_features=[3])

X = onehotencoder.fit_transform(X).toarray()

X =X[:,1:]#变成数据框格式


setp 2:训练模型

1、导入必须的类 LinerRegression从 sklearn.linear_model

2、数据集分割

3、创建回归模型对象 regressor 从 LinearRegression类

4、使用 fit()来训练模型

from sklearn.model_selection import train_test_split

X_train,X_test,Y_train,Y_test = train_test_split(X,Y,test_size=0.2,random_state=0)

from sklearn.linear_model import LinearRegression

regressor = LinearRegression()

regressor.fit(X_train,Y_train)

setp 3:预测结果

1、使用 predict()预测结果

y_pred = regressor.predict(X_test)

import matplotlib.pyplot as plt

plt.scatter(Y_test,y_pred)



实测值与预测值
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概括 理解多重线性回归的应用 , 潜在问题和评估模型拟合的方法 , 是更复杂机器学习方法的核心 学习了如何在Pyt...
    IntoTheVoid阅读 10,280评论 0 12
  • R中的线性回归函数比较简单,就是lm(),比较复杂的是对线性模型的诊断和调整。这里结合Statistical Le...
    真依然很拉风阅读 66,918评论 1 64
  • 泰优汇六项精进第一组打卡记录 倪力【日精进打卡第59天】 一、学习与实践 1.付出不亚于任何人的努力 2.要谦虚,...
    倪力阅读 594评论 0 0
  • 晚上八点半才回到家,儿子开的门,眼泪哗哗的,说爸爸又生气了,在房间里躺着不理他。我用脚趾头都能想到两人又因为写作业...
    十五年17阅读 2,548评论 0 0
  • 文/龙女_ 图片源于网络 前任优秀得可怕,和他相处的人不得不飞奔才能跟上他的脚步 我很爱他,但经常被气得跺脚,往往...
    龙十五_阅读 4,726评论 0 6