zoukankan      html  css  js  c++  java
  • 第七章 线性回归预测模型

    线性回归模型属于经典的统计学模型,该模型的应用场景是根据已知的变量(自变量)来预测某个连续的数值变量(因变量)。

    一元线性回归模型:y=a+bx+ε

    import pandas as pd
    import matplotlib.pyplot as plt
    import seaborn as sns
    
    f = open(r'C:UsersactiveMusicDesktopPython第7章 线性回归模型第7章 线性回归模型第七章 线性回归模型Salary_Data.csv', encoding='UTF-8')
    income = pd.read_csv(f)
    sns.lmplot(x='YearsExperience',y='Salary',data=income,ci=None)
    plt.show()

    如何得到这条拟合线数学表达式?

    运用statsmodels,用于统计建模的第三方模块,如需实现线性回归模型的参数求解,可以调用子模块中的ols函数。有关该函数的语法及参数含义如下

    formula:以字符串的形式指定线性回归模型的公式,如‘y~x’就表示简单线性回归模型。

    data:指定建模的数据集。

    subset:通过bool类型数组对象,获取data的子集用于建模。

    drop_cols:指定需要从data中删除的变量。

    import statsmodels.api as sm
    fit = sm.formula.ols('Salary~YearsExperience',data=income).fit()
    print(fit.params)
    
    OUT:Intercept          25792.200199
    YearsExperience     9449.962321
    dtype: float64

     多元线性回归模型:y=y=β0+β1x1+β2x2+...+ε

    回归模型参数的求解:最小二乘法

    回归模型的预测:用predict方法(predict(exog=None,transform=True)

    exog:指定用于预测的用于预测的其他自变量的值

    transform:bool类型参数,预测时是否将原始数据按照模型表达式进行转换,默认为True

    接下来将基于statsmodels模块对多元线性回归模型的参数进行求解,进而依据其他新的自变量值实现模型的预测功能。

  • 相关阅读:
    MySQL之数据库结构优化
    MySQL之索引
    Spring之单元测试
    Spring之IOC容器加载初始化的方式
    LeetCode之Sort List
    [译]Java 垃圾回收的监控和分析
    [译]Java垃圾回收器的类型
    [译]Java垃圾回收是如何工作的
    [译]Java 垃圾回收介绍
    JSP之项目路径问题(${pageContext.request.contextPath},<%=request.getContextPath()%>以及绝对路径获取)
  • 原文地址:https://www.cnblogs.com/wuxiping2019/p/10394591.html
Copyright © 2011-2022 走看看