线性回归预测模型

一元线性回归模型:

在这里插入图片描述
ε:模型误差项,平衡等号两边值

import seaborn as sns
income = pd.read_csv(r'Salary_Date.csv')
sns.lmplot(x='YearExperience',y='Salary',
			data=income,ci=None)
plt.show()

在这里插入图片描述
线性拟合求解:
误差项最小,转换为误差平方项最小
在这里插入图片描述
最小时,偏导数为0
在这里插入图片描述
在这里插入图片描述
①使用基本语法求解

n = income.shape[0]
sum_x = income.YearsExperience.sum()
sum_y = income.Salary.sum()
sum_x2 = income.YearsExperience.pow(2).sum()
xy = income.YearsExperience * income.Salary
sum_xy = xy.sum()
b = (sum_xy - sum_x * sum_y / n) / (sum_x2 - sum_x ** 2 / n)
a = sum_y.mean() - b * sum_x.mean()

②使用statsmodels中的ols函数
ols(formula,data,subset=None,drop_cols)
formula:‘y~x’
subset:bool类型,子集建模

import statsmodels.api as sm
fit = sm.formula.ols('income.Salary ~ income.YearsExperience',data=income).fit()
fit.params

在这里插入图片描述

多元线性回归

构建多元线性回归的数据集包含n个观测,p+1个变量(p个自变量,1个因变量)
在这里插入图片描述
β:p1的一维向量,偏回

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
掉包构建线性回归预测模型是指使用现有的Python库或者工具包来构建线性回归模型,而不需要手动编写算法代码。在Python中,有很多强大的数据科学库可以用来构建线性回归模型,比如NumPy、Pandas和Scikit-learn等。 下面是使用Scikit-learn库来构建线性回归预测模型的步骤: 1. 导入所需的库: ```python import numpy as np import pandas as pd from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split ``` 2. 准备数据: 首先,你需要准备好用于训练和测试的数据集。通常,你需要将数据集分为特征(自变量)和目标变量(因变量)两部分。特征是用来预测目标变量的属性或特征,而目标变量是你要预测的值。 3. 划分训练集和测试集: 将数据集划分为训练集和测试集,以便评估模型的性能。可以使用`train_test_split`函数来实现: ```python X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) ``` 其中,`X`是特征数据,`y`是目标变量。 4. 构建线性回归模型: ```python model = LinearRegression() model.fit(X_train, y_train) ``` 这里使用`LinearRegression`类来构建线性回归模型,并使用训练集数据进行拟合。 5. 进行预测: ```python y_pred = model.predict(X_test) ``` 使用训练好的模型对测试集进行预测,得到预测结果。 6. 评估模型: 可以使用各种评估指标来评估模型的性能,比如均方误差(Mean Squared Error)和决定系数(R-squared)等。 以上是使用Scikit-learn库进行线性回归预测模型构建的基本步骤。当然,还有其他库和方法可以用来构建线性回归模型,具体选择取决于你的需求和偏好。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值