统计分析之:回归分析

  • 1、引言
  • 2、回归分析
  • 2.1 回归分析的定义与目的
  • 2.2 回归分析的类型
  • 2.3 回归分析的原理
  • 2.4 回归分析的步骤
  • 2.5 、回归分析的应用
  • 2.6 代码示例
  • 3、总结


1、引言

小屌丝:鱼哥,这篇《【统计分析】数据科学必备知识之:统计学基础》让我受益匪浅

小鱼:嗯,这个会~所让也我“受益匪浅”啊

【统计分析】数据科学必备技能之:回归分析_回归

小屌丝:哎呀~ 那是应该的啊 ,
小鱼:必须得,互相学习啊
小屌丝:鱼哥,你还是这么谦虚,其实这叫
小鱼:投其所好?
小屌丝:奈斯 ,果然还得是鱼哥
小鱼:低调低调
小屌丝:对了鱼哥,能不能说一说 回归分析
小鱼:嗯,这个,可以啊
小屌丝:鱼哥,敞亮

2、回归分析

2.1 回归分析的定义与目的

回归分析是一种统计方法,用于确定两个或多个变量之间的关系。

其主要目的是通过建立数学模型,来预测一个或多个自变量对因变量的影响。

回归分析可以帮助我们理解变量之间的关系,评估自变量对因变量的解释能力,并进行预测和决策。

【统计分析】数据科学必备技能之:回归分析_kotlin_02

2.2 回归分析的类型

回归分析的类型有:

  1. 简单线性回归:只有一个自变量和一个因变量,且它们之间的关系是线性的。简单线性回归模型可以表示为:【统计分析】数据科学必备技能之:回归分析_python_03,其中【统计分析】数据科学必备技能之:回归分析_python_04是因变量,【统计分析】数据科学必备技能之:回归分析_回归_05是自变量,【统计分析】数据科学必备技能之:回归分析_python_06是截距,【统计分析】数据科学必备技能之:回归分析_数据分析_07是斜率,【统计分析】数据科学必备技能之:回归分析_数据分析_08是误差项。
  2. 多元线性回归:有两个或多个自变量和一个因变量,且它们之间的关系是线性的。多元线性回归模型可以表示为:【统计分析】数据科学必备技能之:回归分析_kotlin_09,其中【统计分析】数据科学必备技能之:回归分析_python_04是因变量,【统计分析】数据科学必备技能之:回归分析_数据挖掘_11是自变量,【统计分析】数据科学必备技能之:回归分析_python_06是截距,【统计分析】数据科学必备技能之:回归分析_python_13是回归系数,【统计分析】数据科学必备技能之:回归分析_数据分析_08是误差项。
  3. 非线性回归:当自变量和因变量之间的关系不是线性时,需要使用非线性回归模型。非线性回归模型的形式多种多样,如指数模型、对数模型、多项式模型等。

2.3 回归分析的原理

回归分析的基本原理是最小二乘法

最小二乘法的目标是找到一条直线或曲线,使得观测值与预测值之间的误差平方和最小。

通过求解最小二乘法的优化问题,可以得到回归模型的参数估计值。

在简单线性回归中,我们可以通过计算斜率【统计分析】数据科学必备技能之:回归分析_回归_15和截距【统计分析】数据科学必备技能之:回归分析_python_16来确定回归直线。斜率【统计分析】数据科学必备技能之:回归分析_回归_15的计算公式为:

【统计分析】数据科学必备技能之:回归分析_回归_18

截距【统计分析】数据科学必备技能之:回归分析_python_16的计算公式为:

【统计分析】数据科学必备技能之:回归分析_数据挖掘_20

其中,【统计分析】数据科学必备技能之:回归分析_回归_21是样本数量,【统计分析】数据科学必备技能之:回归分析_数据分析_22【统计分析】数据科学必备技能之:回归分析_数据分析_23分别是第【统计分析】数据科学必备技能之:回归分析_数据分析_24个样本的自变量和因变量值,【统计分析】数据科学必备技能之:回归分析_数据分析_25【统计分析】数据科学必备技能之:回归分析_回归_26分别是自变量和因变量的平均值。

在多元线性回归中,我们可以使用矩阵运算来求解回归系数。通过将数据表示为矩阵形式,然后应用最小二乘法的原理,可以得到回归系数的估计值。

2.4 回归分析的步骤

回归分析的步骤如下:

  1. 数据收集:收集自变量和因变量的数据,并进行数据清洗和预处理,确保数据的质量和准确性。
  2. 模型选择:根据数据的特点和研究问题的需求,选择合适的回归模型类型,如简单线性回归、多元线性回归或非线性回归。
  3. 模型拟合:使用收集到的数据对回归模型进行拟合,估计模型的参数。
  4. 模型评估:使用一些评估指标来评估回归模型的性能,如决定系数(【统计分析】数据科学必备技能之:回归分析_数据挖掘_27)、均方误差(MSE)、均方根误差(RMSE)等。如果模型的性能不理想,可以考虑对模型进行改进或选择其他模型。
  5. 模型解释:解释回归模型的结果,包括回归系数的意义、自变量对因变量的影响等。
  6. 预测和应用:使用拟合好的回归模型进行预测,并将其应用于实际问题中,如决策制定、风险评估等。

2.5 、回归分析的应用

  1. 预测:通过建立回归模型,可以根据自变量的值预测因变量的值。例如,在销售预测中,可以使用历史销售数据和相关因素(如广告投入、季节因素等)建立回归模型,来预测未来的销售情况。
  2. 因素分析:回归分析可以帮助我们确定哪些自变量对因变量有显著影响,以及这些影响的大小和方向。这有助于我们理解问题的本质和关键因素,为决策提供依据。
  3. 政策评估:在政策研究中,可以使用回归分析来评估政策的效果。例如,通过比较政策实施前后的相关数据,建立回归模型,来评估政策对经济增长、社会福利等方面的影响。
  4. 科学研究:在许多科学领域,回归分析被用于研究变量之间的关系,验证假设,揭示因果机制。例如,在生物学中,可以使用回归分析来研究基因表达与环境因素之间的关系。

2.6 代码示例

# -*- coding:utf-8 -*-
# @Time   : 2024-11-10
# @Author : Carl_DJ

from sklearn.linear_model import LinearRegression
import numpy as np

# 简单线性回归示例
# 生成样本数据
X = np.array([1, 2, 3, 4, 5]).reshape(-1, 1)  # 自变量
y = np.array([2, 4, 5, 4, 6])  # 因变量

# 创建并拟合线性回归模型
model = LinearRegression()
model.fit(X, y)

# 打印模型的系数和截距
print("简单线性回归:")
print("系数:", model.coef_)
print("截距:", model.intercept_)

# 进行预测
new_X = np.array([6]).reshape(-1, 1)
prediction = model.predict(new_X)
print("预测值:", prediction)


# 多元线性回归示例
# 生成样本数据
X = np.array([[1, 2], [2, 3], [3, 4], [4, 5], [5, 6]])  # 自变量
y = np.array([5, 7, 9, 11, 13])  # 因变量

# 创建并拟合线性回归模型
model = LinearRegression()
model.fit(X, y)

# 打印模型的系数和截距
print("\n多元线性回归:")
print("系数:", model.coef_)
print("截距:", model.intercept_)

# 进行预测
new_X = np.array([[6, 7]])
prediction = model.predict(new_X)
print("预测值:", prediction)

代码解析:

  • 对于简单线性回归
  • 生成了一个自变量 X 和一个因变量 y,
  • 然后创建了 LinearRegression 对象并进行拟合。
  • 最后,我们打印了模型的系数和截距,并对一个新的自变量值进行了预测。
  • 对于多元线性回归
  • 生成了一个包含两个自变量的 X 和一个因变量 y,
  • 同样创建 LinearRegression 对象并进行拟合,
  • 然后打印系数、截距和预测值。

3、总结

回归分析是数据科学中一种重要的统计方法,它可以帮助我们理解变量之间的关系,进行预测和决策。

在实际应用中,需要根据数据的特点和研究问题的需求,选择合适的回归模型类型,并注意数据质量、多重共线性、模型假设和过度拟合等问题,以确保回归分析的结果准确可靠。

我是小鱼

  • 博客专家
  • 阿里云 专家博主
  • 51CTO博客专家
  • 企业认证金牌面试官
  • 多个名企认证&特邀讲师等
  • 名企签约职场面试培训、职场规划师
  • 多个国内主流技术社区的认证专家博主
  • 多款主流产品(阿里云等)评测一等奖获得者

关注小鱼,学习【数据分析】最新最全的领域知识。