简单回归模型建立(下)

目录

数据准备

特征选择

目标变量

模型选择

示例代码

​编辑分析结果


上部分对数据进行了分析以及可视化

选择不同的目标变量,例如"Cost of Living Index"作为我们要预测的目标。然后,我们可以使用其他相关的指标作为特征来训练模型。例如,考虑使用"Rent Index","Groceries Index","Restaurant Price Index","Local Purchasing Power Index"等作为特征。

下面是一个简单的步骤来构建这样一个模型:

  1. 数据准备:选择特征和目标变量,对数据进行预处理。
  2. 模型选择:选择一个合适的机器学习模型。
  3. 模型训练:使用数据训练模型。
  4. 模型评估:评估模型的性能。

数据准备

首先,需要将数据分为特征(X)和目标变量(y)。在这个例子中,假设我们的目标是预测"Cost of Living Index"。

特征选择

我们可以选择以下几个特征:

  • Rent Index
  • Groceries Index
  • Restaurant Price Index
  • Local Purchasing Power Index

目标变量

使用"Cost of Living Index"作为目标变量。

模型选择

对于这种回归问题,可以尝试使用线性回归模型,因为它是简单且易于理解的。如果线性回归的效果不佳,可以尝试更复杂的模型,比如决策树回归或随机森林回归。

示例代码

Python代码示例:

python 复制代码
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_score

# 加载数据
data_path = r'D:\机器学习\数据集:国家划分的生活成本\Cost_of_Living_Index_by_Country_2024.csv'
df = pd.read_csv(data_path)

# 特征选择
features = ['Rent Index', 'Groceries Index', 'Restaurant Price Index', 'Local Purchasing Power Index']
X = df[features]
y = df['Cost of Living Index']

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

# 创建线性回归模型
model = LinearRegression()

# 训练模型
model.fit(X_train, y_train)

# 预测
predictions = model.predict(X_test)

# 评估模型
mse = mean_squared_error(y_test, predictions)
r2 = r2_score(y_test, predictions)

print(f'Mean Squared Error: {mse}')
print(f'R^2 Score: {r2}')

分析结果

在得到模型的结果后,可以查看均方误差(Mean Squared Error, MSE)和决定系数(R^2 Score)来评估模型的好坏。均方误差越低越好,而决定系数接近1则表明模型拟合得很好。

Mean Squared Error: 8.094471876337387

R^2 Score: 0.9737474308220024

可以看出0.97还是非常接近1的

建立简单回归模型的步骤可以总结如下:

  1. 确定变量:首先,需要明确自变量(解释变量)和因变量(响应变量)。例如,在广告费用与销售额的关系中,广告费用是自变量,销售额是因变量。

  2. 数据预处理:在进行建模之前,通常需要对数据进行清洗和准备。这包括处理缺失值、异常值以及确保数据满足线性关系的基本假设。

  3. 绘制散点图:通过绘制散点图来可视化自变量和因变量之间的关系,初步判断它们之间是否存在线性关系。

  4. 建立模型 :使用适当的统计软件或编程语言(如R、Python等)中的函数来拟合回归模型。在R中,可以使用lm()函数;在Python中,可以使用sklearn库中的LinearRegression类。

  5. 模型拟合:利用数据拟合回归模型,得到回归系数(β0和β1),其中β0是截距,β1是斜率。

  6. 模型检验:检查模型的显著性和拟合优度,包括R²值、F检验、t检验等统计指标,以评估模型的有效性。

  7. 预测与诊断:使用模型进行预测,并对模型进行诊断,检查残差分布是否符合正态分布,是否存在异方差性等问题。

  8. 模型优化:根据模型诊断结果,可能需要调整模型参数或使用其他技术(如正则化)来改善模型性能。

  9. 结果解释与应用:最后,解释模型参数的含义,并将模型应用于实际问题中进行预测或决策支持。

相关推荐
兆。2 分钟前
掌握 PyQt5:从零开始的桌面应用开发
开发语言·爬虫·python·qt
cuisidong199728 分钟前
5G学习笔记三之物理层、数据链路层、RRC层协议
笔记·学习·5g
乌恩大侠30 分钟前
5G周边知识笔记
笔记·5g
南宫理的日知录36 分钟前
99、Python并发编程:多线程的问题、临界资源以及同步机制
开发语言·python·学习·编程学习
coberup1 小时前
django Forbidden (403)错误解决方法
python·django·403错误
龙哥说跨境1 小时前
如何利用指纹浏览器爬虫绕过Cloudflare的防护?
服务器·网络·python·网络爬虫
小白学大数据2 小时前
正则表达式在Kotlin中的应用:提取图片链接
开发语言·python·selenium·正则表达式·kotlin
flashman9112 小时前
python在word中插入图片
python·microsoft·自动化·word
菜鸟的人工智能之路2 小时前
桑基图在医学数据分析中的更复杂应用示例
python·数据分析·健康医疗
咔叽布吉2 小时前
【论文阅读笔记】CamoFormer: Masked Separable Attention for Camouflaged Object Detection
论文阅读·笔记·目标检测