Decision Tree Regressor (决策树) --- 论文实战

发布于:2024-11-03 ⋅ 阅读:(56) ⋅ 点赞:(0)

一、前言

       在《机器学习论文复现实战---linear regression》中通过Pearson 相关性分析,去除了2个高相关性特征 "PN" 和 "AN" ,数据维度变为890*25(数据集地址

 这里我们不做前期处理,直接就将数据放入 DecisionTreeRegressor 模型中进行训练了。

二、模型训练过程

 2.1  导入Python库

'''====================导入Python库===================='''
import pandas as pd               #python科学计算库
import numpy as np                #Python的一个开源数据分析处理库。
import matplotlib.pyplot as plt   #常用Python画图工具
from sklearn.tree import DecisionTreeRegressor  # 导入 DecisionTreeRegressor 模型
from sklearn.model_selection import train_test_split # 数据划分模块
from sklearn.preprocessing import StandardScaler   # 标准化模块
from sklearn.metrics import mean_squared_error,r2_score   #误差函数MSE,误差函数R^2,
from sklearn.model_selection import GridSearchCV     #超参数网格搜索

2.2  导入数据 

'''========================导入数据========================'''
data = pd.read_excel('D:/复现/trainset_loop6.xlsx')  #读取xlsx格式数据
# date = pd.read_csv('D:/复现/trainset_loop6.csv')   #读取csv格式数据
print(data.isnull().sum())   #检查数据中是否存在缺失值
print(data.shape)   #检查维度
print(data.columns) #数据的标签
data = data.drop(["PN","AN"], axis = 1) #axis = 1表示对列进行处理,0表示对行
Y, X = data['Eads'] , data.drop(['Eads'] , axis = 1) #对Y、X分别赋值

 2.3  标准化

'''=========================标准化========================'''
#利用StandardScaler函数对X进行标准化处理
scaler = StandardScaler()
X = scaler.fit_transform(X)
'''====================划分训练集与测试集==================='''
X_train,X_test,y_train,y_test = train_test_split(X , Y , test_size=0.2 , random_state=42)

2.4  模型训练

'''================

网站公告

今日签到

点亮在社区的每一天
去签到