工信部网站备案管理系统,网站不备案行吗,成都网站建设 龙兵,手机软件开发工具目录 前言实战 前言
多元线性回归是回归分析中的一种复杂模型#xff0c;它考虑了多个输入变量对输出变量的影响。与一元线性回归不同#xff0c;多元线性回归通过引入多个因素#xff0c;更全面地建模了系统关系。
多元线性回归模型的表达式为#xff1a; f ( X ) K T … 目录 前言实战 前言
多元线性回归是回归分析中的一种复杂模型它考虑了多个输入变量对输出变量的影响。与一元线性回归不同多元线性回归通过引入多个因素更全面地建模了系统关系。
多元线性回归模型的表达式为 f ( X ) K T X b f(X) K^TXb f(X)KTXb 其中X为输入向量包含多个特征自变量f (X)为模型的输出或响应预测的目标变量 K T K^T KT 为特征权重b为是模型的截距或偏置我们的目标是通过学习 K T K^T KT 和b 使得f (X)尽可能的接近真实观测值y。 为了方便计算和编程我们可以将b吸收进x和k中去使得 y k ^ T x ^ y\hat{k}^T\hat{x} yk^Tx^,因为 y k T x b ∗ 1 yk^T x b*1 ykTxb∗1 展开可得 y k 1 x 1 k 2 x 2 . . . k n x n b ∗ 1 yk_1x_1k_2x_2...k_nx_nb*1 yk1x1k2x2...knxnb∗1 我们重现令 x ^ ( x , 1 ) [ x 1 , x 2 , . . . , x n , 1 ] \hat{x}(x,1)[x_1,x_2,...,x_n,1] x^(x,1)[x1,x2,...,xn,1] k ^ ( k , b ) [ k 1 , k 2 , . . . , k n , b ] \hat{k}(k,b)[k_1,k_2,...,k_n,b] k^(k,b)[k1,k2,...,kn,b]
从而得到 y k ^ T x ^ y\hat{k}^T\hat{x} yk^Tx^。这样的变形使得模型表达更为简洁同时不影响其表达能力。
实战
# 导入模块
from sklearn import model_selection
import statsmodels.api as sm
import numpy as np
import pandas as pd # 导入数据
Profit pd.read_excel(rPredict to Profit.xlsx)
# 将数据集拆分为训练集和测试集
train, test model_selection.train_test_split(Profit, test_size 0.2, random_state1234)
# 根据train数据集建模
model sm.formula.ols(Profit ~ RD_SpendAdministrationMarketing_SpendC(State), data train).fit()print(模型的偏回归系数分别为\n, model.params)
# 删除test数据集中的Profit变量用剩下的自变量进行预测
test_X test.drop(labels Profit, axis 1)
pred model.predict(exog test_X)print(对比预测值和实际值的差异\n,pd.DataFrame({Prediction:pred,Real:test.Profit}))模型的偏回归系数分别为Intercept 58581.516503
C(State)[T.Florida] 927.394424
C(State)[T.New York] -513.468310
C(State)[T.New York] -513.468310
RD_Spend 0.803487
Administration -0.057792
Marketing_Spend 0.013779
dtype: float64
对比预测值和实际值的差异Prediction Real
8 150621.345802 152211.77
48 55513.218079 35673.41
14 150369.022458 132602.65
42 74057.015562 71498.49
29 103413.378282 101004.64
44 67844.850378 65200.33
4 173454.059692 166187.94
31 99580.888894 97483.56
13 128147.138396 134307.35
18 130693.433835 124266.90