python 线性回归分析模型检验标准–拟合优度详解

yizhihongxing

python 线性回归分析模型检验标准--拟合优度详解

线性回归模型是回归分析中广泛使用的一种模型。对于线性回归模型,通常需要对其进行检验来验证其可靠性。其中一项重要的检验指标是拟合优度,本文将详细讲解拟合优度的计算和含义。

一、拟合优度

拟合优度(Goodness of Fit)是一种衡量模型拟合程度的指标,通常用 $R^2$ 表示。$R^2$ 的值介于 0 到 1 之间,表示因变量样本的变异有多少可以用自变量拟合解释。当 $R^2$ 越接近于 1 时,说明模型拟合效果越好。实际上,$R^2$ 可以理解为模型解释因变量差异的能力。

二、计算方法

拟合优度是通过比较实际值与模型预测值的离差平方和(SSres)和因变量总离差平方和(SStot)来计算得到。具体公式如下:

$$ R^2 = 1- \frac{SS_{\rm res}}{SS_{\rm tot}} $$

其中,$SS_{\rm res}$ 是实际值与模型预测值之间的离差平方和,$SS_{\rm tot}$ 是因变量总离差平方和。

计算拟合优度的过程可以通过 python 的 scikit-learn 库实现,具体代码如下:

from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score

# 训练线性回归模型
model = LinearRegression()
model.fit(X_train, y_train)

# 计算拟合优度
y_pred = model.predict(X_test)
r2 = r2_score(y_test, y_pred)
print("拟合优度为:{0:.2f}".format(r2))

其中 X_trainy_train 分别是训练集的自变量和因变量,X_testy_test 分别是测试集的自变量和因变量。

三、实例应用

下面通过两个实例来说明如何使用拟合优度计算线性回归模型的可靠性。

实例1: 预测人口增长模型

首先,我们使用 scikit-learn 库生成一个简单的样本数据集用于模型训练和测试。

from sklearn.datasets import make_regression
from sklearn.model_selection import train_test_split

# 生成样本数据
X, y = make_regression(n_samples=1000, n_features=5, noise=0.3, random_state=42)

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

然后,我们训练一个线性回归模型并计算拟合优度。

from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score

# 训练线性回归模型
model = LinearRegression()
model.fit(X_train, y_train)

# 计算拟合优度
y_pred = model.predict(X_test)
r2 = r2_score(y_test, y_pred)
print("拟合优度为:{0:.2f}".format(r2))

输出结果为:

拟合优度为:1.00

可见,在这个简单的人口增长模型中,线性回归拟合优度非常高,说明模型对实际数据拟合非常好。

实例2: 预测房价模型

接下来,我们以波士顿房价数据集为例,使用线性回归进行房价预测,并计算拟合优度。

from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score

# 导入波士顿房价数据集
boston = load_boston()

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(boston.data, boston.target, test_size=0.2, random_state=42)

# 训练线性回归模型
model = LinearRegression()
model.fit(X_train, y_train)

# 计算拟合优度
y_pred = model.predict(X_test)
r2 = r2_score(y_test, y_pred)
print("拟合优度为:{0:.2f}".format(r2))

输出结果为:

拟合优度为:0.67

可见,在波士顿房价数据集上,线性回归拟合优度略低,说明模型对实际数据拟合效果一般。由此,我们可以进一步探索如何优化模型拟合效果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 线性回归分析模型检验标准–拟合优度详解 - Python技术站

(0)
上一篇 2023年6月13日
下一篇 2023年6月13日

相关文章

  • 如何串联两个或多个Pandas数据帧

    串联两个或多个Pandas数据帧需要使用concat()函数,它可用于在多个Pandas数据帧之间执行串联操作。以下是完整攻略: 1.导入所需的模块 import pandas as pd 2.准备要串联的数据帧 我们先创建两个Pandas数据帧df1和df2作为例子: df1 = pd.DataFrame({‘A’: [‘A0’, ‘A1’, ‘A2’, …

    python-answer 2023年3月27日
    00
  • python 根据csv表头、列号读取数据的实现

    下面是关于”python 根据csv表头、列号读取数据的实现”的完整攻略。 1. 读取csv文件 Python中可用csv库来读取csv文件,例如: import csv with open(‘data.csv’) as csv_file: csv_reader = csv.reader(csv_file) for row in csv_reader: pr…

    python 2023年5月14日
    00
  • Pandas使用query()优雅的查询实例

    下面是关于Pandas使用query()优雅的查询实例的完整攻略。 标准的markdown格式文本 什么是Pandas的query()方法 Pandas是Python中常用的数据处理库,它提供了query()方法用于查询数据。query() 方法支持字符串化的查询语句,可以方便的查询DataFrame中的数据。 query()方法的使用 query() 方法…

    python 2023年5月14日
    00
  • 使用Pandas创建水平条形图

    下面我将为您详细介绍使用Pandas创建水平条形图的完整攻略。 1.准备数据 首先,我们需要准备数据,并将其存储在Pandas的DataFrame对象中。 下面是一个示例DataFrame,其中包含每个月份的销售数据: import pandas as pd import matplotlib.pyplot as plt sales_data = {‘Mon…

    python-answer 2023年3月27日
    00
  • 10分钟快速入门Pandas库

    10分钟快速入门Pandas库 Pandas是Python中一个强大的数据分析库,它能够轻松地处理和分析大量的数据。在这篇文章中,我们将探索如何在10分钟内快速入门Pandas库。 安装Pandas 在开始之前,我们需要确保Pandas库已经被安装在我们的本地机器上。可以使用下面的命令进行安装: pip install pandas 导入Pandas库 安装…

    python 2023年5月14日
    00
  • python 读取以空格分开的文件操作

    让我来为您详细介绍一下Python读取以空格分开的文件操作。 文件读取 Python内置了读写文件的功能。读取文件时,需要使用open()函数打开一个文件,接着使用read()或readline()方法读取文件内容,最后使用close()方法关闭文件。下面是一个读取文件的示例代码: with open(‘file.txt’, ‘r’) as f: data …

    python 2023年6月13日
    00
  • pandas数据合并之pd.concat()用法详解

    下面是针对“pandas数据合并之pd.concat()用法详解”这个话题的完整攻略: 标题:pandas数据合并之pd.concat()用法详解 1. 什么是pd.concat()函数 pd.concat() 是一个 pandas 库中提供的函数,它可以实现这么一种合并多个 Pandas DataFrame 对象的操作,对应的 SQL 语句为 UNION …

    python 2023年5月14日
    00
  • Pandas库的下载和安装

    Python 官方标准发行版并没有自带 Pandas 库,因此需要另行安装。下面介绍在不同操作系统环境下,标准发行版安装 Pandas 的方法。 Windows系统安装 使用 pip 包管理器安装 Pandas,是最简单的一种安装方式。在 CMD 命令提示符界面行执行以下命令:pip install pandas Linux系统安装 对于不同的版本的 Lin…

    Pandas 2023年3月4日
    00
合作推广
合作推广
分享本页
返回顶部