731 lines
606 KiB
Plaintext
731 lines
606 KiB
Plaintext
|
{
|
||
|
"cells": [
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 1,
|
||
|
"id": "a3901bba-d66d-4358-89a7-50dc4b3dd91e",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"import pandas as pd"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 2,
|
||
|
"id": "a4713d33-c5a2-4f49-8aed-873069543bec",
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/html": [
|
||
|
"<div>\n",
|
||
|
"<style scoped>\n",
|
||
|
" .dataframe tbody tr th:only-of-type {\n",
|
||
|
" vertical-align: middle;\n",
|
||
|
" }\n",
|
||
|
"\n",
|
||
|
" .dataframe tbody tr th {\n",
|
||
|
" vertical-align: top;\n",
|
||
|
" }\n",
|
||
|
"\n",
|
||
|
" .dataframe thead th {\n",
|
||
|
" text-align: right;\n",
|
||
|
" }\n",
|
||
|
"</style>\n",
|
||
|
"<table border=\"1\" class=\"dataframe\">\n",
|
||
|
" <thead>\n",
|
||
|
" <tr style=\"text-align: right;\">\n",
|
||
|
" <th></th>\n",
|
||
|
" <th>碳源</th>\n",
|
||
|
" <th>共碳化物质</th>\n",
|
||
|
" <th>共碳化物/煤沥青</th>\n",
|
||
|
" <th>加热次数</th>\n",
|
||
|
" <th>是否有碳化过程</th>\n",
|
||
|
" <th>模板剂种类</th>\n",
|
||
|
" <th>模板剂比例</th>\n",
|
||
|
" <th>KOH与煤沥青比例</th>\n",
|
||
|
" <th>活化温度</th>\n",
|
||
|
" <th>升温速率</th>\n",
|
||
|
" <th>活化时间</th>\n",
|
||
|
" <th>混合方式</th>\n",
|
||
|
" <th>比表面积</th>\n",
|
||
|
" <th>总孔体积</th>\n",
|
||
|
" <th>微孔体积</th>\n",
|
||
|
" <th>平均孔径</th>\n",
|
||
|
" </tr>\n",
|
||
|
" </thead>\n",
|
||
|
" <tbody>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>0</th>\n",
|
||
|
" <td>煤沥青</td>\n",
|
||
|
" <td>无</td>\n",
|
||
|
" <td>0.0</td>\n",
|
||
|
" <td>1</td>\n",
|
||
|
" <td>否</td>\n",
|
||
|
" <td>自制氧化钙</td>\n",
|
||
|
" <td>1.0</td>\n",
|
||
|
" <td>1.0</td>\n",
|
||
|
" <td>500</td>\n",
|
||
|
" <td>5</td>\n",
|
||
|
" <td>2.0</td>\n",
|
||
|
" <td>溶剂</td>\n",
|
||
|
" <td>908.07</td>\n",
|
||
|
" <td>0.40</td>\n",
|
||
|
" <td>0.34</td>\n",
|
||
|
" <td>1.75</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>1</th>\n",
|
||
|
" <td>煤沥青</td>\n",
|
||
|
" <td>无</td>\n",
|
||
|
" <td>0.0</td>\n",
|
||
|
" <td>1</td>\n",
|
||
|
" <td>否</td>\n",
|
||
|
" <td>自制氧化钙</td>\n",
|
||
|
" <td>1.0</td>\n",
|
||
|
" <td>0.5</td>\n",
|
||
|
" <td>600</td>\n",
|
||
|
" <td>5</td>\n",
|
||
|
" <td>2.0</td>\n",
|
||
|
" <td>溶剂</td>\n",
|
||
|
" <td>953.95</td>\n",
|
||
|
" <td>0.66</td>\n",
|
||
|
" <td>0.35</td>\n",
|
||
|
" <td>2.76</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>2</th>\n",
|
||
|
" <td>煤沥青</td>\n",
|
||
|
" <td>无</td>\n",
|
||
|
" <td>0.0</td>\n",
|
||
|
" <td>1</td>\n",
|
||
|
" <td>否</td>\n",
|
||
|
" <td>自制氧化钙</td>\n",
|
||
|
" <td>1.0</td>\n",
|
||
|
" <td>1.0</td>\n",
|
||
|
" <td>600</td>\n",
|
||
|
" <td>5</td>\n",
|
||
|
" <td>2.0</td>\n",
|
||
|
" <td>溶剂</td>\n",
|
||
|
" <td>1388.62</td>\n",
|
||
|
" <td>0.61</td>\n",
|
||
|
" <td>0.53</td>\n",
|
||
|
" <td>1.77</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>3</th>\n",
|
||
|
" <td>煤沥青</td>\n",
|
||
|
" <td>无</td>\n",
|
||
|
" <td>0.0</td>\n",
|
||
|
" <td>1</td>\n",
|
||
|
" <td>否</td>\n",
|
||
|
" <td>自制氧化钙</td>\n",
|
||
|
" <td>1.0</td>\n",
|
||
|
" <td>2.0</td>\n",
|
||
|
" <td>600</td>\n",
|
||
|
" <td>5</td>\n",
|
||
|
" <td>2.0</td>\n",
|
||
|
" <td>溶剂</td>\n",
|
||
|
" <td>1444.63</td>\n",
|
||
|
" <td>0.59</td>\n",
|
||
|
" <td>0.55</td>\n",
|
||
|
" <td>1.62</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>4</th>\n",
|
||
|
" <td>煤沥青</td>\n",
|
||
|
" <td>无</td>\n",
|
||
|
" <td>0.0</td>\n",
|
||
|
" <td>2</td>\n",
|
||
|
" <td>是</td>\n",
|
||
|
" <td>自制碱式碳酸镁</td>\n",
|
||
|
" <td>1.0</td>\n",
|
||
|
" <td>1.0</td>\n",
|
||
|
" <td>600</td>\n",
|
||
|
" <td>5</td>\n",
|
||
|
" <td>2.0</td>\n",
|
||
|
" <td>溶剂</td>\n",
|
||
|
" <td>1020.99</td>\n",
|
||
|
" <td>0.45</td>\n",
|
||
|
" <td>0.35</td>\n",
|
||
|
" <td>1.77</td>\n",
|
||
|
" </tr>\n",
|
||
|
" </tbody>\n",
|
||
|
"</table>\n",
|
||
|
"</div>"
|
||
|
],
|
||
|
"text/plain": [
|
||
|
" 碳源 共碳化物质 共碳化物/煤沥青 加热次数 是否有碳化过程 模板剂种类 模板剂比例 KOH与煤沥青比例 活化温度 升温速率 \\\n",
|
||
|
"0 煤沥青 无 0.0 1 否 自制氧化钙 1.0 1.0 500 5 \n",
|
||
|
"1 煤沥青 无 0.0 1 否 自制氧化钙 1.0 0.5 600 5 \n",
|
||
|
"2 煤沥青 无 0.0 1 否 自制氧化钙 1.0 1.0 600 5 \n",
|
||
|
"3 煤沥青 无 0.0 1 否 自制氧化钙 1.0 2.0 600 5 \n",
|
||
|
"4 煤沥青 无 0.0 2 是 自制碱式碳酸镁 1.0 1.0 600 5 \n",
|
||
|
"\n",
|
||
|
" 活化时间 混合方式 比表面积 总孔体积 微孔体积 平均孔径 \n",
|
||
|
"0 2.0 溶剂 908.07 0.40 0.34 1.75 \n",
|
||
|
"1 2.0 溶剂 953.95 0.66 0.35 2.76 \n",
|
||
|
"2 2.0 溶剂 1388.62 0.61 0.53 1.77 \n",
|
||
|
"3 2.0 溶剂 1444.63 0.59 0.55 1.62 \n",
|
||
|
"4 2.0 溶剂 1020.99 0.45 0.35 1.77 "
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 2,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"data = pd.read_excel('./data/20240123/煤沥青数据.xlsx')\n",
|
||
|
"data.head()"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 3,
|
||
|
"id": "b1a0903a-596f-4d6f-98b1-a668a26f4175",
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/plain": [
|
||
|
"(149, 16)"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 3,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"data.shape"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 4,
|
||
|
"id": "359c9cc6-2694-46a6-9f18-6361e220542a",
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/plain": [
|
||
|
"Index(['碳源', '共碳化物质', '共碳化物/煤沥青', '加热次数', '是否有碳化过程', '模板剂种类', '模板剂比例',\n",
|
||
|
" 'KOH与煤沥青比例', '活化温度', '升温速率', '活化时间', '混合方式', '比表面积', '总孔体积', '微孔体积',\n",
|
||
|
" '平均孔径'],\n",
|
||
|
" dtype='object')"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 4,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"data.columns"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 5,
|
||
|
"id": "7ca6d610-060a-4540-bf1d-4f51cc2c55d1",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"data.drop(columns=['碳源'], inplace=True)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 6,
|
||
|
"id": "24f58281-9f13-49ef-b44d-81d0644d6976",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"object_cols = ['共碳化物质', '是否有碳化过程', '模板剂种类', '混合方式']"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 7,
|
||
|
"id": "3368163e-85a1-4487-8078-be51cb5fb560",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"data = pd.get_dummies(data, columns=object_cols)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 8,
|
||
|
"id": "92d5da6b-f714-4a78-9aa7-7cf9dff1d0a0",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"out_cols = ['比表面积', '总孔体积', '微孔体积', '平均孔径']\n",
|
||
|
"feature_cols = [x for x in data.columns if x not in out_cols]"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 9,
|
||
|
"id": "e4946bd7-ae94-4981-82ed-66e2b496e035",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"train_data = data.reset_index(drop=True)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 10,
|
||
|
"id": "e545ccba-07b2-4c49-bd48-f49b3892fafc",
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/plain": [
|
||
|
"(149, 40)"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 10,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"train_data.shape"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 11,
|
||
|
"id": "4109685a-4d5b-4c63-b4e2-eb9db3989d02",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"import xgboost as xgb\n",
|
||
|
"from sklearn.metrics import mean_absolute_error, mean_squared_error, mean_absolute_percentage_error, r2_score"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 12,
|
||
|
"id": "2bbdcd34-16c1-43ba-b249-6c7d54db8ac2",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"from sklearn.model_selection import KFold, train_test_split\n",
|
||
|
"kf = KFold(n_splits=5, shuffle=True, random_state=666)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 13,
|
||
|
"id": "42597842-1acb-4263-bdad-bfca7b11bcb5",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"import numpy as np"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 14,
|
||
|
"id": "94af2a3a-6f61-46bf-8cd4-2b7e0da8b2c4",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"params_xgb = {\"objective\": 'reg:squarederror',\n",
|
||
|
" \"subsample\": 0.9,\n",
|
||
|
" \"max_depth\": 20,\n",
|
||
|
" \"eta\": 0.01,\n",
|
||
|
" \"colsample_bytree\": 0.9,}\n",
|
||
|
"num_boost_round = 1000"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 15,
|
||
|
"id": "f17eadb3-4767-4eca-bbed-880bf9cbb7a3",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"import matplotlib.pyplot as plt"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 16,
|
||
|
"id": "5bfcc8aa-f13c-4a7d-9d15-b79087e11017",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"plt.rcParams[\"font.sans-serif\"] = [\"SimHei\"] # 设置字体\n",
|
||
|
"plt.rcParams[\"axes.unicode_minus\"] = False # 正常显示负号"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 18,
|
||
|
"id": "db4dbc2d-534e-4a7e-b45c-ea25ab269502",
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"name": "stdout",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"MSE: 146052.1781, RMSE: 382.1677, MAE: 335.8072, MAPE: 27.62 %, R_2: 0.3237\n",
|
||
|
"MSE: 457536.2053, RMSE: 676.4142, MAE: 524.2504, MAPE: 436.7 %, R_2: 0.4597\n",
|
||
|
"MSE: 426986.1964, RMSE: 653.4418, MAE: 517.7005, MAPE: 28.25 %, R_2: 0.1735\n",
|
||
|
"MSE: 276509.2691, RMSE: 525.8415, MAE: 387.3172, MAPE: 32.43 %, R_2: 0.4786\n",
|
||
|
"MSE: 300204.7099, RMSE: 547.9094, MAE: 395.1222, MAPE: 314.87 %, R_2: 0.3381\n",
|
||
|
"MSE: 243884.6623, RMSE: 493.8468, MAE: 382.9586, MAPE: 1077.01 %, R_2: 0.6543\n",
|
||
|
"MSE: 380516.2705, RMSE: 616.86, MAE: 528.3397, MAPE: 42.43 %, R_2: 0.294\n",
|
||
|
"MSE: 457352.6686, RMSE: 676.2785, MAE: 515.0433, MAPE: 547.78 %, R_2: 0.5355\n",
|
||
|
"MSE: 275148.3579, RMSE: 524.5459, MAE: 464.9701, MAPE: 48.3 %, R_2: 0.3033\n",
|
||
|
"MSE: 215299.6743, RMSE: 464.004, MAE: 385.4702, MAPE: 20.69 %, R_2: 0.4055\n"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 1200x800 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
},
|
||
|
{
|
||
|
"name": "stdout",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"MSE: 0.0565, RMSE: 0.2377, MAE: 0.1623, MAPE: 30.73 %, R_2: 0.7346\n",
|
||
|
"MSE: 0.1443, RMSE: 0.3798, MAE: 0.2874, MAPE: 154.87 %, R_2: 0.801\n",
|
||
|
"MSE: 0.3168, RMSE: 0.5628, MAE: 0.4358, MAPE: 43.0 %, R_2: 0.4067\n",
|
||
|
"MSE: 0.1148, RMSE: 0.3389, MAE: 0.2794, MAPE: 29.47 %, R_2: 0.597\n",
|
||
|
"MSE: 0.1082, RMSE: 0.329, MAE: 0.2451, MAPE: 125.28 %, R_2: 0.3208\n",
|
||
|
"MSE: 0.0987, RMSE: 0.3141, MAE: 0.2595, MAPE: 338.62 %, R_2: 0.6563\n",
|
||
|
"MSE: 0.1457, RMSE: 0.3817, MAE: 0.2933, MAPE: 40.45 %, R_2: 0.3009\n",
|
||
|
"MSE: 0.1538, RMSE: 0.3922, MAE: 0.3011, MAPE: 441.83 %, R_2: 0.4244\n",
|
||
|
"MSE: 0.1302, RMSE: 0.3609, MAE: 0.2923, MAPE: 46.21 %, R_2: 0.1553\n",
|
||
|
"MSE: 0.0737, RMSE: 0.2715, MAE: 0.2209, MAPE: 22.16 %, R_2: 0.6708\n"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA9QAAAKoCAYAAACWQ7eKAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOy9eZwcZ3ntf6p6756ZHm0jjRbb8m4hL9hg4MaEHYtgY3CCweCwXAxBQBIg3BBnE84ll/1i+F1wYkNiEkNsxyTYjoOA2IZgsCOIvEnyhpEsWxptM5qZnum9qn5/vPVWVa/TS1VXdff5fj769PQyPaWe6er3vOd5zqMYhmGAEEIIIYQQQgghbaH6fQCEEEIIIYQQQkg/QkFNCCGEEEIIIYR0AAU1IYQQQgghhBDSARTUhBBCCCGEEEJIB1BQE0IIIYQQQgghHUBBTQghhBBCCCGEdAAFNSGEEEIIIYQQ0gEU1IQQQgghhBBCSAdQUBNCCCF9TDabxfPPPw/DMPw+FEIIIWTooKAmhBBCfCabzXb8vXfeeSc2bNiAXC7X9HH5fB4/+9nPam4/ePAgrrvuOmia1tbPpYAnhBBCKKgJIYSQnmAYBi6//HJ861vfqrhd0zSceuqp+PrXv17zPcViEQ8//DAef/xxPPHEEzX/Dh06hHg8DgCIxWJNf/4DDzyAiy66CPfff3/F7c8//zw+9rGPQVGUpt+vaRqeeOIJfOtb38I73vEOvOQlL0GhUMDs7Gzdf/l8vpWXhRBCCOlrwn4fACGEEDIMKIqCV73qVXj/+9+PF7zgBXjRi14EAPjpT3+KI0eO4DWveU3N90xNTeGlL30pYrFYheBdWFiApmm4+uqr8aY3vQkAEAqFmv787du34+yzz8ZFF11UcXs4HIaqqlDV+nvsc3NzeNGLXoT9+/dD0zTEYjF8+MMfxlvf+lYcPHgQJ598ct3v+1//63/h85//fNNjIoQQQvodOtSEEEJIj/j93/99XHbZZXjqqaes226++Wa89a1vxRlnnFHz+BNPPBH5fB5zc3OW8/u3f/u3UBQFb37zm/HXf/3XSzrLAFAqlfCtb30L73znOzE7O4vp6Wnr+RYXF6EoSoW7PDMzg9nZWQBAOp3G9773Pezfvx/f+973sGrVKnz+85/HW97yFixfvhwAsHfvXhiGYf17zWteYznnhBBCyCBDh5oQQgjpAbFYDMViEQBw++23453vfGfF/bfccgsA4LHHHsPmzZvrPsc3vvENfOhDH8J1112HD3/4wy3/7H/913/F4cOH8ZKXvAR/8id/gr/927+tecyyZcsqrr/zne/EzTffjHK5jJNPPhnRaNS6zzAMlMvlpn3UjRxvQgghZJDgpx0hhBDSA2KxGO67774KJ9f577nnngOACuHqZMeOHXj/+9+Pb33rW22JacMw8NnPfta6/pWvfMUSwx/72MdwyimnIBQKYcOGDfj5z38OwzCgaRq++c1vAhDiP5lMIhwO49JLL8Wzzz4LVVURjUZx++23d/GKEEIIIf0PBTUhhBDSAyKRSFePm5+fBwC85S1vAQCUy+WWnu8f/uEfsG/fPqRSKQBC2IdCIRiGgdtvvx2vf/3rAQCXXHIJ/vEf/xGAcJdlyNnFF1+Mxx57DE8//TRe+9rXYt26dXjmmWfwxBNPYMuWLS0dAyGEEDKoUFATQgghPaBYLOLAgQP41a9+Vfffvn37AIh+52bcd999+OAHP4hTTz11yZ9ZLpfx6U9/Gp/+9KdreppvuukmzM3N4a1vfSsA4Pd+7/dw00034Zlnnql43LJly7B582asWbMGP//5zxEOhzE9PY0zzjgDyWSy4c9e6v9BCCGEDALsoSaEEEJ6QLFYxFVXXdXS45w8++yzuPfee3HrrbcCAP7wD/8Qv/M7v4PbbrttyecKh8O4++67cdppp+Ev//IvrdsPHTqEP/3TP8Uf/MEfWL3T5557Lt7ylrfgve99L374wx/WCPC/+Zu/QblcxuLiIl796lfja1/7muVub9y4seZnv/CFL1zy+AghhJB+RzGaJYoQQgghpGsKhYIVSpbP5zE2NoavfvWrePvb346JiQnrcceOHcPKlSut67fffjve+ta3YmRkBBdccAF+8pOfIJfLVYjdf/u3f8Oll17aNCAMAFauXInbb78d559/Pl71qldB13U88MADeOKJJ/CiF70I5XIZx48fx4te9CKceuqpuOWWWyyxffz4cZx55pnYsmULfvKTn2Dr1q343Oc+h0cffbRh6Xk6na4JOiOEEEIGDZZ8E0IIIR5z7rnn4q677sKtt95qjcc6cOAALr74YmQyGQCArut45StfiY997GPW9/32b/82vv3tb+PgwYP48z//866P47HHHsOLX/xiHDx4EH//938PXdeh67p1/+joKP71X/8Vu3fvxjnnnIMjR44AAD7+8Y9j5cqV+O3f/m0AwiW/+uqrsXLlSsRiMXzlK1/B2rVrcdJJJ+GRRx6BqqoU04QQQoYCCmpCCCHEQ37961/jqaeewvnnn49YLGa5y3KGtCzdVlUV3/nOd/B3f/d3+OQnPwkAUBQF73jHOzA6OurKsUQiEaxbtw73338/PvGJTyCVSuGCCy6ApmlQFAWRSAQ7d+7Egw8+iOuvvx4TExO47bbbcNNNN+GrX/2qNQorHo/j85//POLxOD73uc/h5ptvxvz8PHRdx1/8xV/gd3/3dyuEOiGEEDKoUFATQgghHvLd734XF1xwAdatW4doNGqJ0nA4jPvuuw/ve9/7AIiQsHA4jH/+53/Gl770JXz/+9+veJ6lSrrl/QsLC7jyyiuxe/fumseceeaZuPfee3HKKafgO9/5Dg4ePIj77rsPqqpiZmYGR48exRVXXIH169fjkksuAQC8+c1vxm233YbXvOY1Nc/32GOP4Wtf+xq+8pWvYOXKlVBVFf/wD/+An//85/jiF7/Y/otFCCGE9BkU1IQQQohHGIaBG2+8EVdccQUAMWP6+PHjVil1Op0GABw5cgR//Md/jG9961t4/etfj3vuuadiJNX27dvxj//4j4hEIjVzquX1f/qnf8Kjjz6Kz372s7jllltq0rqry7snJiYwOTmJVCoFXdcxPj6OlStX1iR3R6NRKwncKepzuRze9a534c1vfjPe8Y53WLefd955+KM/+iNs27YNTz75ZGcvHCGEENInMOWbEEII8QhFUXDrrbdi3bp1AIDTTz8doVAIq1evrnicqqo499xzrf7pV7ziFRX3f/Ob38S//Mu/4EMf+pDlcEsuvPBCbN68Ge985zsBCOf7bW97m+UwS+LxODRNqznGQqFgXVYne1eTz+dRLpdRKpVw5ZVXYnZ2Ft/4xjdqHvcXf/EX+Pa3v40//uM/xh133NH0OQkhhJB+hinfhBBCSMDZv38/kslkRQK4H3zjG9/An/zJn+DYsWP44z/+Y1x++eV46UtfWvexP/rRj3D22WdjzZo1PT5KQgghpHdQUBNCCCGEEEIIIR3AHmpCCCGEEEIIIaQDKKgJIYQQQgghhJAOoKAmhBBCCCGEEEI6gIKaEEIIIYQQQgjpgMCPzdJ1HQcPHsTo6CgURfH7cAghhBBCCCGEDDiGYSCTyWDt2rU1IyudBF5QHzx4EBs2bPD7MAghhBBCCCGEDBnPPfcc1q9f3/D+wAvq0dFRAOI/MjY25vPREEIIIYQQQggZdObn57FhwwZLjzYi8IJalnmPjY1RUBNCCCGEEEII6RlLtR0zlIwQQgghhBBCCOkACmpCCCGEEEIIIaQDKKgJIYQQQgghhJAOCHwPNSGEEEIIIYSQ1tA0DaVSye/DCDyRSAShUKjr56GgJoQQQgghhJA+xzAMHDp0CLOzs34fSt8wPj6ONWvWLBk81gwKakIIIYQQQgjpc6SYnpiYQDKZ7EokDjqGYSCbzeLIkSMAgMnJyY6fi4KaEEIIIYQQQvoYTdMsMb1ixQq/D6cvSCQSAIAjR45gYmKi4/JvhpIRQgghhBBCSB8je6aTyaTPR9JfyNerm55zCmpCCCGEEEIIGQBY5t0ebrxeFNSEEEIIIYQQQkg
|
||
|
"text/plain": [
|
||
|
"<Figure size 1200x800 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
},
|
||
|
{
|
||
|
"name": "stdout",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"MSE: 0.0334, RMSE: 0.1829, MAE: 0.1388, MAPE: 28.81 %, R_2: -0.1911\n",
|
||
|
"MSE: 0.0604, RMSE: 0.2457, MAE: 0.1958, MAPE: 1278.96 %, R_2: 0.6126\n",
|
||
|
"MSE: 0.0646, RMSE: 0.2542, MAE: 0.1992, MAPE: 41.7 %, R_2: 0.3841\n",
|
||
|
"MSE: 0.0459, RMSE: 0.2142, MAE: 0.153, MAPE: 38.47 %, R_2: 0.563\n",
|
||
|
"MSE: 0.0213, RMSE: 0.1459, MAE: 0.1258, MAPE: 216.58 %, R_2: 0.6774\n",
|
||
|
"MSE: 0.0332, RMSE: 0.1822, MAE: 0.1545, MAPE: 1355.85 %, R_2: 0.7458\n",
|
||
|
"MSE: 0.0534, RMSE: 0.231, MAE: 0.1976, MAPE: 63.72 %, R_2: 0.19\n",
|
||
|
"MSE: 0.0217, RMSE: 0.1474, MAE: 0.1131, MAPE: 1044.2 %, R_2: 0.7267\n",
|
||
|
"MSE: 0.09, RMSE: 0.3, MAE: 0.261, MAPE: 76.62 %, R_2: 0.058\n",
|
||
|
"MSE: 0.0616, RMSE: 0.2482, MAE: 0.1984, MAPE: 44.34 %, R_2: 0.3462\n"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 1200x800 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
},
|
||
|
{
|
||
|
"name": "stdout",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"MSE: 0.7362, RMSE: 0.858, MAE: 0.5955, MAPE: 23.28 %, R_2: 0.6539\n",
|
||
|
"MSE: 0.6157, RMSE: 0.7847, MAE: 0.4994, MAPE: 15.91 %, R_2: 0.3943\n",
|
||
|
"MSE: 0.2767, RMSE: 0.526, MAE: 0.4052, MAPE: 18.6 %, R_2: 0.6936\n",
|
||
|
"MSE: 0.5095, RMSE: 0.7138, MAE: 0.4774, MAPE: 16.58 %, R_2: 0.7721\n",
|
||
|
"MSE: 2.0145, RMSE: 1.4193, MAE: 0.9327, MAPE: 24.89 %, R_2: 0.0073\n",
|
||
|
"MSE: 1.4449, RMSE: 1.202, MAE: 0.5396, MAPE: 13.41 %, R_2: 0.2873\n",
|
||
|
"MSE: 0.4101, RMSE: 0.6404, MAE: 0.4024, MAPE: 16.32 %, R_2: -1.8128\n",
|
||
|
"MSE: 1.4384, RMSE: 1.1993, MAE: 0.8923, MAPE: 39.29 %, R_2: -0.313\n",
|
||
|
"MSE: 0.3805, RMSE: 0.6168, MAE: 0.4343, MAPE: 16.0 %, R_2: 0.6971\n",
|
||
|
"MSE: 0.0937, RMSE: 0.3061, MAE: 0.2214, MAPE: 9.25 %, R_2: 0.9435\n"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 1200x800 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"eva_total = list()\n",
|
||
|
"index_list = list()\n",
|
||
|
"eva_cols = ['MSE', 'RMSE', 'MAE', 'MAPE', 'R2']\n",
|
||
|
"for col in out_cols:\n",
|
||
|
" eva_list = list()\n",
|
||
|
" train_data = train_data[~train_data[col].isna()].reset_index(drop=True)\n",
|
||
|
" cur_test = list()\n",
|
||
|
" cur_real = list()\n",
|
||
|
" for (train_index, test_index) in kf.split(train_data):\n",
|
||
|
" train = train_data.loc[train_index]\n",
|
||
|
" valid = train_data.loc[test_index]\n",
|
||
|
" X_train, Y_train = train[feature_cols], train[col]\n",
|
||
|
" X_valid, Y_valid = valid[feature_cols], valid[col]\n",
|
||
|
" dtrain = xgb.DMatrix(X_train, Y_train)\n",
|
||
|
" dvalid = xgb.DMatrix(X_valid, Y_valid)\n",
|
||
|
" watchlist = [(dvalid, 'eval')]\n",
|
||
|
" gb_model = xgb.train(params_xgb, dtrain, num_boost_round, evals=watchlist,\n",
|
||
|
" early_stopping_rounds=100, verbose_eval=False)\n",
|
||
|
" y_pred = gb_model.predict(xgb.DMatrix(X_valid))\n",
|
||
|
" y_true = Y_valid.values\n",
|
||
|
" MSE = mean_squared_error(y_true, y_pred)\n",
|
||
|
" RMSE = np.sqrt(mean_squared_error(y_true, y_pred))\n",
|
||
|
" MAE = mean_absolute_error(y_true, y_pred)\n",
|
||
|
" MAPE = mean_absolute_percentage_error(y_true, y_pred)\n",
|
||
|
" R_2 = r2_score(y_true, y_pred)\n",
|
||
|
" cur_test.extend(y_pred[:7])\n",
|
||
|
" cur_real.extend(y_true[:7])\n",
|
||
|
" print('MSE:', round(MSE, 4), end=', ')\n",
|
||
|
" print('RMSE:', round(RMSE, 4), end=', ')\n",
|
||
|
" print('MAE:', round(MAE, 4), end=', ')\n",
|
||
|
" print('MAPE:', round(MAPE*100, 2), '%', end=', ')\n",
|
||
|
" print('R_2:', round(R_2, 4)) #R方为负就说明拟合效果比平均值差\n",
|
||
|
" eva_list.append([MSE, RMSE, MAE, MAPE, R_2])\n",
|
||
|
" plt.figure(figsize=(12, 8))\n",
|
||
|
" plt.plot(range(len(cur_test)), cur_real, 'o-', label='real')\n",
|
||
|
" plt.plot(range(len(cur_test)), cur_test, '*-', label='pred')\n",
|
||
|
" plt.legend(loc='best')\n",
|
||
|
" plt.title(f'{col}')\n",
|
||
|
" plt.show()\n",
|
||
|
" eva_total.append(np.mean(eva_list, axis=0))\n",
|
||
|
" index_list.append(f\"{col}\")"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 19,
|
||
|
"id": "844d8b9f-a820-4d59-85f5-df434ca3da8d",
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/html": [
|
||
|
"<div>\n",
|
||
|
"<style scoped>\n",
|
||
|
" .dataframe tbody tr th:only-of-type {\n",
|
||
|
" vertical-align: middle;\n",
|
||
|
" }\n",
|
||
|
"\n",
|
||
|
" .dataframe tbody tr th {\n",
|
||
|
" vertical-align: top;\n",
|
||
|
" }\n",
|
||
|
"\n",
|
||
|
" .dataframe thead th {\n",
|
||
|
" text-align: right;\n",
|
||
|
" }\n",
|
||
|
"</style>\n",
|
||
|
"<table border=\"1\" class=\"dataframe\">\n",
|
||
|
" <thead>\n",
|
||
|
" <tr style=\"text-align: right;\">\n",
|
||
|
" <th></th>\n",
|
||
|
" <th>MSE</th>\n",
|
||
|
" <th>RMSE</th>\n",
|
||
|
" <th>MAE</th>\n",
|
||
|
" <th>MAPE</th>\n",
|
||
|
" <th>R2</th>\n",
|
||
|
" </tr>\n",
|
||
|
" </thead>\n",
|
||
|
" <tbody>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>比表面积</th>\n",
|
||
|
" <td>317949.019239</td>\n",
|
||
|
" <td>556.130983</td>\n",
|
||
|
" <td>443.697934</td>\n",
|
||
|
" <td>2.576080</td>\n",
|
||
|
" <td>0.396622</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>总孔体积</th>\n",
|
||
|
" <td>0.134278</td>\n",
|
||
|
" <td>0.356866</td>\n",
|
||
|
" <td>0.277702</td>\n",
|
||
|
" <td>1.272616</td>\n",
|
||
|
" <td>0.506787</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>微孔体积</th>\n",
|
||
|
" <td>0.048545</td>\n",
|
||
|
" <td>0.215159</td>\n",
|
||
|
" <td>0.173718</td>\n",
|
||
|
" <td>4.189249</td>\n",
|
||
|
" <td>0.411268</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>平均孔径</th>\n",
|
||
|
" <td>0.792019</td>\n",
|
||
|
" <td>0.826652</td>\n",
|
||
|
" <td>0.540024</td>\n",
|
||
|
" <td>0.193539</td>\n",
|
||
|
" <td>0.232322</td>\n",
|
||
|
" </tr>\n",
|
||
|
" </tbody>\n",
|
||
|
"</table>\n",
|
||
|
"</div>"
|
||
|
],
|
||
|
"text/plain": [
|
||
|
" MSE RMSE MAE MAPE R2\n",
|
||
|
"比表面积 317949.019239 556.130983 443.697934 2.576080 0.396622\n",
|
||
|
"总孔体积 0.134278 0.356866 0.277702 1.272616 0.506787\n",
|
||
|
"微孔体积 0.048545 0.215159 0.173718 4.189249 0.411268\n",
|
||
|
"平均孔径 0.792019 0.826652 0.540024 0.193539 0.232322"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 19,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"pd.DataFrame.from_records(eva_total, index=index_list, columns=eva_cols)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 19,
|
||
|
"id": "dcce8331-256f-4e22-8ac5-f07dca12f3cf",
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/html": [
|
||
|
"<div>\n",
|
||
|
"<style scoped>\n",
|
||
|
" .dataframe tbody tr th:only-of-type {\n",
|
||
|
" vertical-align: middle;\n",
|
||
|
" }\n",
|
||
|
"\n",
|
||
|
" .dataframe tbody tr th {\n",
|
||
|
" vertical-align: top;\n",
|
||
|
" }\n",
|
||
|
"\n",
|
||
|
" .dataframe thead th {\n",
|
||
|
" text-align: right;\n",
|
||
|
" }\n",
|
||
|
"</style>\n",
|
||
|
"<table border=\"1\" class=\"dataframe\">\n",
|
||
|
" <thead>\n",
|
||
|
" <tr style=\"text-align: right;\">\n",
|
||
|
" <th></th>\n",
|
||
|
" <th>MSE</th>\n",
|
||
|
" <th>RMSE</th>\n",
|
||
|
" <th>MAE</th>\n",
|
||
|
" <th>MAPE</th>\n",
|
||
|
" <th>R2</th>\n",
|
||
|
" </tr>\n",
|
||
|
" </thead>\n",
|
||
|
" <tbody>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>比表面积</th>\n",
|
||
|
" <td>315103.064636</td>\n",
|
||
|
" <td>547.014045</td>\n",
|
||
|
" <td>398.015647</td>\n",
|
||
|
" <td>0.976955</td>\n",
|
||
|
" <td>0.466536</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>总孔体积</th>\n",
|
||
|
" <td>0.127985</td>\n",
|
||
|
" <td>0.353757</td>\n",
|
||
|
" <td>0.268668</td>\n",
|
||
|
" <td>1.179238</td>\n",
|
||
|
" <td>0.470801</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>微孔体积</th>\n",
|
||
|
" <td>0.044655</td>\n",
|
||
|
" <td>0.207595</td>\n",
|
||
|
" <td>0.164963</td>\n",
|
||
|
" <td>4.548583</td>\n",
|
||
|
" <td>0.536350</td>\n",
|
||
|
" </tr>\n",
|
||
|
" <tr>\n",
|
||
|
" <th>平均孔径</th>\n",
|
||
|
" <td>0.801410</td>\n",
|
||
|
" <td>0.828470</td>\n",
|
||
|
" <td>0.533512</td>\n",
|
||
|
" <td>0.184272</td>\n",
|
||
|
" <td>0.302607</td>\n",
|
||
|
" </tr>\n",
|
||
|
" </tbody>\n",
|
||
|
"</table>\n",
|
||
|
"</div>"
|
||
|
],
|
||
|
"text/plain": [
|
||
|
" MSE RMSE MAE MAPE R2\n",
|
||
|
"比表面积 315103.064636 547.014045 398.015647 0.976955 0.466536\n",
|
||
|
"总孔体积 0.127985 0.353757 0.268668 1.179238 0.470801\n",
|
||
|
"微孔体积 0.044655 0.207595 0.164963 4.548583 0.536350\n",
|
||
|
"平均孔径 0.801410 0.828470 0.533512 0.184272 0.302607"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 19,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"pd.DataFrame.from_records(eva_total, index=index_list, columns=eva_cols)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": null,
|
||
|
"id": "0beadfa6-eef9-47fd-adb7-8ed245fa942d",
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": []
|
||
|
}
|
||
|
],
|
||
|
"metadata": {
|
||
|
"kernelspec": {
|
||
|
"display_name": "python38",
|
||
|
"language": "python",
|
||
|
"name": "python38"
|
||
|
},
|
||
|
"language_info": {
|
||
|
"codemirror_mode": {
|
||
|
"name": "ipython",
|
||
|
"version": 3
|
||
|
},
|
||
|
"file_extension": ".py",
|
||
|
"mimetype": "text/x-python",
|
||
|
"name": "python",
|
||
|
"nbconvert_exporter": "python",
|
||
|
"pygments_lexer": "ipython3",
|
||
|
"version": "3.8.18"
|
||
|
}
|
||
|
},
|
||
|
"nbformat": 4,
|
||
|
"nbformat_minor": 5
|
||
|
}
|