美文网首页线性回归
简单线性回归

简单线性回归

作者: 何同尘 | 来源:发表于2018-12-08 22:12 被阅读3次

    回归是统计中的明珠。利用回归我们可以预测反应变量的值。简单的线性回归就是利用独立的简单变量预测一个反应变量。

    其假设反应变量和自变量之间具有很强的相关性,这个可以通过相关分析得出。利用最小二乘法计算出参数,就可以通过模型来预测其他值。

    setp 1:数据预处理

    包括导入必须的包、导入必须的数据、处理异常值、数据集分割、对数据进行特征缩放、对分类数据进行编码。

    import pandas as pd#导入包

    import numpy as np

    import matplotlib.pyplot as plt

    dataset = pd.read_csv("studentscores.csv")

    X = dataset.iloc[:,:1].values; Y = dataset.iloc[:,1].values#导入数据

    from sklearn.model_selection import train_test_split#分割数据集

    X_train,X_test,Y_train,Y_test = train_test_split(X,Y,test_size=1/4,random_state=0)

    setp 2:利用训练数据训练简单线性回归模型

    在sklearn.learn_mode 中,导入 LinearRegression ,可以用来创建线性回归模型,使用fit()方法去训练模型。

    PS.在很多模型中,都是使用fit()来训练模型的。

    from sklearn.linear_model import LinearRegression#导入线性回归模型类

    regressor = LinearRegression()#初始化模型

    regressor = regressor.fit(X_train,Y_train)#训练模型

    setp 3:利用回归模型预测结果

    模型训练结束后,我们并不知道模型的精度如何,因此使用测试集用来测试,也就是用测试集做预测。使用LinerRegression类中的predict()方法预测值。

    PS.在很多模型中,都是使用predict()方法预测值。

    Y_pred = regressor.predict(X_test)#预测

    setp 4:可视化

    对于数据,结果非常不直观,我们需要将数据可视化,也就是做成图表,更加直观。在任何行业都有可视化的工作。在这里,我们使用matplotlib.pyplot 包 画图。听名字大家都知道,这是在matlab的画图工具中继承过来的。我们可以画出散点图scatter()来查看训练结果。

    当然,除了matplot包之外,还有plotyy,seaborn,等等,绘图超好看!!!

    plt.scatter(X_train,Y_train,color = 'red')

    plt.plot(X_train,regressor.predict(X_train),color='blue')

    plt.scatter(X_train,Y_train,color = 'red') plt.plot(X_train,regressor.predict(X_train),color='blue')

    相关文章

      网友评论

        本文标题:简单线性回归

        本文链接:https://www.haomeiwen.com/subject/injchqtx.html