ICEEMDAN-Solar_power-forecast/iceemdan信号重构.ipynb

498 lines
217 KiB
Plaintext
Raw Normal View History

2024-08-12 07:42:30 +08:00
{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\asus\\AppData\\Roaming\\Python\\Python39\\site-packages\\pandas\\core\\computation\\expressions.py:21: UserWarning: Pandas requires version '2.8.4' or newer of 'numexpr' (version '2.8.3' currently installed).\n",
" from pandas.core.computation.check import NUMEXPR_INSTALLED\n",
"C:\\Users\\asus\\AppData\\Roaming\\Python\\Python39\\site-packages\\pandas\\core\\arrays\\masked.py:60: UserWarning: Pandas requires version '1.3.6' or newer of 'bottleneck' (version '1.3.5' currently installed).\n",
" from pandas.core import (\n"
]
}
],
"source": [
"from math import sqrt\n",
"from numpy import concatenate\n",
"from matplotlib import pyplot\n",
"import pandas as pd\n",
"import numpy as np\n",
"from sklearn.preprocessing import MinMaxScaler\n",
"from sklearn.preprocessing import LabelEncoder\n",
"from sklearn.metrics import mean_squared_error\n",
"from tensorflow.keras import Sequential\n",
"\n",
"from tensorflow.keras.layers import Dense\n",
"from tensorflow.keras.layers import LSTM\n",
"from tensorflow.keras.layers import Dropout\n",
"from sklearn.model_selection import train_test_split\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 67,
"metadata": {},
"outputs": [],
"source": [
"# 加载数据\n",
"path1 = r\"D:\\project\\小论文1-基于ICEEMDAN分解的时序高维变化的短期光伏功率预测模型\\CEEMAN-PosConv1dbiLSTM-LSTM\\模型代码流程\\完整的模型代码流程\\9996低频_forecast.csv\"#数据所在路径\n",
"#我的数据是excel表若是csv文件用pandas的read_csv()函数替换即可。\n",
"f_low= pd.DataFrame(pd.read_csv(path1))"
]
},
{
"cell_type": "code",
"execution_count": 68,
"metadata": {},
"outputs": [],
"source": [
"# 加载数据\n",
"path2 = r\"D:\\project\\小论文1-基于ICEEMDAN分解的时序高维变化的短期光伏功率预测模型\\CEEMAN-PosConv1dbiLSTM-LSTM\\模型代码流程\\完整的模型代码流程\\99939高频re_forecast.csv\"#数据所在路径\n",
"#我的数据是excel表若是csv文件用pandas的read_csv()函数替换即可。\n",
"f_high= pd.DataFrame(pd.read_csv(path2))"
]
},
{
"cell_type": "code",
"execution_count": 69,
"metadata": {},
"outputs": [],
"source": [
"path3= r\"D:\\project\\小论文1-基于ICEEMDAN分解的时序高维变化的短期光伏功率预测模型\\CEEMAN-PosConv1dbiLSTM-LSTM\\模型代码流程\\完整的模型代码流程\\9996低频_test.csv\"#数据所在路径\n",
"#我的数据是excel表若是csv文件用pandas的read_csv()函数替换即可。\n",
"true_low= pd.DataFrame(pd.read_csv(path3))"
]
},
{
"cell_type": "code",
"execution_count": 70,
"metadata": {},
"outputs": [],
"source": [
"path4= r\"D:\\project\\小论文1-基于ICEEMDAN分解的时序高维变化的短期光伏功率预测模型\\CEEMAN-PosConv1dbiLSTM-LSTM\\模型代码流程\\完整的模型代码流程\\99939高频re_test.csv\"#数据所在路径\n",
"#我的数据是excel表若是csv文件用pandas的read_csv()函数替换即可。\n",
"true_high= pd.DataFrame(pd.read_csv(path4))"
]
},
{
"cell_type": "code",
"execution_count": 71,
"metadata": {},
"outputs": [],
"source": [
"path5= r\"D:\\project\\小论文1-基于ICEEMDAN分解的时序高维变化的短期光伏功率预测模型\\CEEMAN-PosConv1dbiLSTM-LSTM\\模型代码流程\\完整的模型代码流程\\test.csv\"#数据所在路径\n",
"#我的数据是excel表若是csv文件用pandas的read_csv()函数替换即可。\n",
"true_2= pd.DataFrame(pd.read_csv(path5))"
]
},
{
"cell_type": "code",
"execution_count": 72,
"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>column_name</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>4.607052</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>4.585928</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>4.574285</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4.546298</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>4.497329</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1557</th>\n",
" <td>0.022011</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1558</th>\n",
" <td>0.020204</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1559</th>\n",
" <td>0.019515</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1560</th>\n",
" <td>0.022857</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1561</th>\n",
" <td>0.018875</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1562 rows × 1 columns</p>\n",
"</div>"
],
"text/plain": [
" column_name\n",
"0 4.607052\n",
"1 4.585928\n",
"2 4.574285\n",
"3 4.546298\n",
"4 4.497329\n",
"... ...\n",
"1557 0.022011\n",
"1558 0.020204\n",
"1559 0.019515\n",
"1560 0.022857\n",
"1561 0.018875\n",
"\n",
"[1562 rows x 1 columns]"
]
},
"execution_count": 72,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pre_data=f_low+f_high\n",
"pre_data"
]
},
{
"cell_type": "code",
"execution_count": 73,
"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>column_name</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>4.679599e+00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>4.675801e+00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>4.636000e+00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4.572200e+00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>4.525266e+00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1557</th>\n",
" <td>6.661338e-16</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1558</th>\n",
" <td>0.000000e+00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1559</th>\n",
" <td>2.220446e-16</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1560</th>\n",
" <td>2.220446e-16</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1561</th>\n",
" <td>4.440892e-16</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1562 rows × 1 columns</p>\n",
"</div>"
],
"text/plain": [
" column_name\n",
"0 4.679599e+00\n",
"1 4.675801e+00\n",
"2 4.636000e+00\n",
"3 4.572200e+00\n",
"4 4.525266e+00\n",
"... ...\n",
"1557 6.661338e-16\n",
"1558 0.000000e+00\n",
"1559 2.220446e-16\n",
"1560 2.220446e-16\n",
"1561 4.440892e-16\n",
"\n",
"[1562 rows x 1 columns]"
]
},
"execution_count": 73,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"true=true_low+true_high\n",
"true"
]
},
{
"cell_type": "code",
"execution_count": 80,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABP4AAAKTCAYAAACJusZ+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdebwsZ10n/k9VdXdV791nP+fuNze52cjOksgmDII4rqi/YVBgXHBjAJWZER0cldEwyoiIP5HBcZBhRH6gqCMiCBIwQEISkpB9ubn7ctbe9656fn88T59zbnK3c3p5qqo/79crL26fnNv9veHWqapPfZ/vYwghBIiIiIiIiIiIiChUTN0FEBERERERERER0eAx+CMiIiIiIiIiIgohBn9EREREREREREQhxOCPiIiIiIiIiIgohBj8ERERERERERERhRCDPyIiIiIiIiIiohBi8EdERERERERERBRCkVF/oOd5OHXqFNLpNAzDGPXHExERERERERERBZoQApVKBQsLCzDN8/f1jTz4O3XqFHbt2jXqjyUiIiIiIiIiIgqV48ePY+fOnef99yMP/tLpNABZWCaTGfXHExERERERERERBVq5XMauXbvWc7bzGXnw11vem8lkGPwRERERERERERFt08XG6HFzDyIiIiIiIiIiohBi8EdERERERERERBRCDP6IiIiIiIiIiIhCaOQz/oiIiIiIiIiIaPy4rotOp6O7jECIRqOwLKvv92HwR0REREREREREQyOEwJkzZ1AsFnWXEii5XA5zc3MX3cDjQrYU/P3Gb/wGfvM3f/Osrx08eBCPP/74tgsgIiIiIiIiIqLw6oV+MzMzSCQSfQVZ40AIgXq9jqWlJQDA/Pz8tt9ryx1/11xzDb74xS9uvEGETYNERERERERERPRcruuuh36Tk5O6ywmMeDwOAFhaWsLMzMy2l/1uObWLRCKYm5vb1ocREREREREREdH46M30SyQSmisJnt5/s06ns+3gb8u7+j711FNYWFjA/v378YY3vAHHjh274Pe3Wi2Uy+Wz/iEiIiIiIiIiovHB5b1bN4j/ZlsK/l74whfiox/9KP7xH/8RH/rQh3D48GG85CUvQaVSOe/vuf3225HNZtf/2bVrV99FExERERERERER0YUZQgix3d9cLBaxZ88e/P7v/z5+8id/8pzf02q10Gq11l+Xy2Xs2rULpVIJmUxmux9NREREREREREQ+12w2cfjwYezbtw+O4+guJ1Au9N+uXC4jm81eNF/ra2eOXC6HK664Ak8//fR5v8e2bdi23c/HEBERERERERER0RZtecbfZtVqFYcOHeprW2EiIiIiIiIiIiK/efnLX453vOMdusvoy5aCv3e+8534yle+giNHjuDrX/86fvAHfxCWZeH1r3/9sOojIiIiIiIiIiLyHSEEut2u7jIuaEvB34kTJ/D6178eBw8exI/+6I9icnISd911F6anp4dVHxERERERERERhYgQAvV2d+T/bGWbize/+c34yle+gg984AMwDAOGYeCjH/0oDMPA5z73Odx8882wbRt33nkn3vzmN+MHfuAHzvr973jHO/Dyl798/bXnebj99tuxb98+xONxXH/99fj0pz89oP+i57elGX9/+Zd/Oaw6iIiIiIiIiIhoDDQ6Lq7+9c+P/HMf/a1XIxG7tCjsAx/4AJ588klce+21+K3f+i0AwCOPPAIA+JVf+RW8733vw/79+5HP5y/p/W6//XZ8/OMfx5/8yZ/g8ssvx1e/+lX82I/9GKanp/Gyl71se3+gS9DX5h5ERERERERERERhk81mEYvFkEgkMDc3BwB4/PHHAQC/9Vu/hVe96lWX/F6tVgu/8zu/gy9+8Yu49dZbAQD79+/HnXfeiQ9/+MMM/oiIiIiIiIiIKBziUQuP/tartXzuINxyyy1b+v6nn34a9Xr9OWFhu93GjTfeOJCazofBHxERERERERERjYxhGJe85NaPksnkWa9N03zO/MBOp7P+62q1CgD47Gc/ix07dpz1fbZtD6lKKbj/lYmIiIiIiIiIiIYkFovBdd2Lft/09DQefvjhs772wAMPIBqNAgCuvvpq2LaNY8eODXVZ77kw+CMiIiIiIiIiInqWvXv34u6778aRI0eQSqXged45v+8Vr3gFfu/3fg8f+9jHcOutt+LjH/84Hn744fVlvOl0Gu985zvxi7/4i/A8Dy9+8YtRKpXwta99DZlMBm9605uG9mcwh/bOREREREREREREAfXOd74TlmXh6quvxvT0NI4dO3bO73v1q1+Nd7/73fiP//E/4vnPfz4qlQre+MY3nvU973nPe/Dud78bt99+O6666iq85jWvwWc/+1ns27dvqH8GQzx7EfKQlctlZLNZlEolZDKZUX40ERERERERERGNULPZxOHDh7Fv3z44jqO7nEC50H+7S83X2PFHREREREREREQUQgz+iIiIiIiIiIj65HkC1VYXAPDp+07gnZ96EKV65yK/i2i4uLkHEREREREREVGf3v03D+GGB34dr9wbxe88/SNY85J45FQZ//C2F8MwDN3l0Zhi8EdERERERERE1Ie1Whv33vM1/Lb9ZeAY8N+tRdQsByeXp/D5Ry7Ha66d010ijSkGf0REREREREREffjsQ6fxXea966+/03pw/de/+s3X4zXXfq+Osog444+IiIiIiIiAaquLD37pKbz/n55Es+PqLocoUL59bA0/aN15zn935fLnR1wN0QYGf0RERERERIT//Y2j+O//9CT+9Evfxie+eUx3OUTBcewuvOfRV2O/eQbtaAb3TX7fWf/6hxqfBoo8pkgPBn9ERERERESEe548jo9Fb8cjzk/i3/7T89G4+6Mo1tv43X98HF97ekV3eUT+43aBr38Q4mPfDwctAEDt5p/HzW/5Y+CHPoLy6/8v7vcOIIUGug98UnOxNK4444+IiIiIiGjMNTsurjr+SbzUeggAYKMDfO7t+O6/6aIm4vgfd6TwiZ99CZ6/d0JzpUQ+8vjfA1/4zzAAfNm9Hr9j/BQ+/10/DpgGcN2PIi0E/kHchhvxNNqHv4HIy3UXTOOIHX9ERERERERj7hsPPYl/b37qOV+/w/5l3OP8PP459ss4dO8XNFRG5F+dk3IDj0PePN7S+WW88KYbYZrG+r83DAPHUtcDAGKnvolmu6OlThpvDP6IaDi6beDePwMKRwAhdFdDREREROfR7nRx8LOvg2OoUOIXH8WZ5/+ns75nt7mMH3rkbXj8ySfwka8+g47raaiUyF9OPnU/AOBj7nfhlv2z+I+vufI531PNXYWqcBDpVPCjv/En+P/uPT7qMmmE2u227hKeg8EfEQ1eswR85DuBv/9F4APXA394A1Bd0l0VEREREZ3DZz79cSy4JwEA5ct/AMjuwNxr3wW87OzwLyZa+Nwn/gi//Q+P4Y+/fEhDpUT+4XkC5soTAICX3PYd+MRbXoSME33O9+2aSuPr3jUAgN+L/An+6q846y9IXv7yl+Otb30r3vrWtyKbzWJqagrvfve7IVRzy969e/Ge97wHb3zjG5HJZPCWt7wFAHDnnXfiJS95CeLxOHbt2oW3ve1tqNVqWv4MDP6IaPA+9WZg8eGN14UjwJd+a+N1pznqioiIiIjoHFxPIPPkXwEAHtv9emTe8OfyXxgGcNu/B3J70Ji9Ge/uvBkA8IviY/ho9L+h/tU/RJddfzTGTiwXsMM7DQD4jhd9x3m/77LpFL7s3QAAOGiewCft90A8/JlRlOhvQgDt2uj/2cZqtD//8z9HJBLBN7/5TXzgAx/A7//+7+NP//RP1//9+973Plx//fW4//778e53vxuHDh3Ca17zGrzuda/Dt7/9bXzyk5/EnXfeibe+9a2D/C94ybi5BxENlhDwjt/7nKcK4v6Pw7jxx9G66yOIPfbXMF78DuAV75YXlURERESkxb2HV3CL9wBgAAde9oaz/6WdBt52P0zXw9+8+2/wE9bnsM9cxMutB/FyPIiHn3orrr3yoJa6iXRbffIb2G0IFIwc8hM7zvt9B2ZS+KD7Qvyw9VVcZzyDqOH
"text/plain": [
"<Figure size 1600x800 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(16,8))\n",
"plt.plot(true, label='true')\n",
"plt.plot(pre_data, label='pre')\n",
"plt.legend()\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 82,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABP4AAAKTCAYAAACJusZ+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdebwsZ10n/k9VdXdV791nP+fuNze52cjOksgmDII4rqi/YVBgXHBjAJWZER0cldEwyoiIP5HBcZBhRH6gqCMiCBIwQEISkpB9ubn7ctbe9656fn88T59zbnK3c3p5qqo/79crL26fnNv9veHWqapPfZ/vYwghBIiIiIiIiIiIiChUTN0FEBERERERERER0eAx+CMiIiIiIiIiIgohBn9EREREREREREQhxOCPiIiIiIiIiIgohBj8ERERERERERERhRCDPyIiIiIiIiIiohBi8EdERERERERERBRCkVF/oOd5OHXqFNLpNAzDGPXHExERERERERERBZoQApVKBQsLCzDN8/f1jTz4O3XqFHbt2jXqjyUiIiIiIiIiIgqV48ePY+fOnef99yMP/tLpNABZWCaTGfXHExERERERERERBVq5XMauXbvWc7bzGXnw11vem8lkGPwRERERERERERFt08XG6HFzDyIiIiIiIiIiohBi8EdERERERERERBRCDP6IiIiIiIiIiIhCaOQz/oiIiIiIiIiIaPy4rotOp6O7jECIRqOwLKvv92HwR0REREREREREQyOEwJkzZ1AsFnWXEii5XA5zc3MX3cDjQrYU/P3Gb/wGfvM3f/Osrx08eBCPP/74tgsgIiIiIiIiIqLw6oV+MzMzSCQSfQVZ40AIgXq9jqWlJQDA/Pz8tt9ryx1/11xzDb74xS9uvEGETYNERERERERERPRcruuuh36Tk5O6ywmMeDwOAFhaWsLMzMy2l/1uObWLRCKYm5vb1ocREREREREREdH46M30SyQSmisJnt5/s06ns+3gb8u7+j711FNYWFjA/v378YY3vAHHjh274Pe3Wi2Uy+Wz/iEiIiIiIiIiovHB5b1bN4j/ZlsK/l74whfiox/9KP7xH/8RH/rQh3D48GG85CUvQaVSOe/vuf3225HNZtf/2bVrV99FExERERERERER0YUZQgix3d9cLBaxZ88e/P7v/z5+8id/8pzf02q10Gq11l+Xy2Xs2rULpVIJmUxmux9NREREREREREQ+12w2cfjwYezbtw+O4+guJ1Au9N+uXC4jm81eNF/ra2eOXC6HK664Ak8//fR5v8e2bdi23c/HEBERERERERER0RZtecbfZtVqFYcOHeprW2EiIiIiIiIiIiK/efnLX453vOMdusvoy5aCv3e+8534yle+giNHjuDrX/86fvAHfxCWZeH1r3/9sOojIiIiIiIiIiLyHSEEut2u7jIuaEvB34kTJ/D6178eBw8exI/+6I9icnISd911F6anp4dVHxERERERERERhYgQAvV2d+T/bGWbize/+c34yle+gg984AMwDAOGYeCjH/0oDMPA5z73Odx8882wbRt33nkn3vzmN+MHfuAHzvr973jHO/Dyl798/bXnebj99tuxb98+xONxXH/99fj0pz89oP+i57elGX9/+Zd/Oaw6iIiIiIiIiIhoDDQ6Lq7+9c+P/HMf/a1XIxG7tCjsAx/4AJ588klce+21+K3f+i0AwCOPPAIA+JVf+RW8733vw/79+5HP5y/p/W6//XZ8/OMfx5/8yZ/g8ssvx1e/+lX82I/9GKanp/Gyl71se3+gS9DX5h5ERERERERERERhk81mEYvFkEgkMDc3BwB4/PHHAQC/9Vu/hVe96lWX/F6tVgu/8zu/gy9+8Yu49dZbAQD79+/HnXfeiQ9/+MMM/oiIiIiIiIiIKBziUQuP/tartXzuINxyyy1b+v6nn34a9Xr9OWFhu93GjTfeOJCazofBHxERERERERERjYxhGJe85NaPksnkWa9N03zO/MBOp7P+62q1CgD47Gc/ix07dpz1fbZtD6lKKbj/lYmIiIiIiIiIiIYkFovBdd2Lft/09DQefvjhs772wAMPIBqNAgCuvvpq2LaNY8eODXVZ77kw+CMiIiIiIiIiInqWvXv34u6778aRI0eQSqXged45v+8Vr3gFfu/3fg8f+9jHcOutt+LjH/84Hn744fVlvOl0Gu985zvxi7/4i/A8Dy9+8YtRKpXwta99DZlMBm9605uG9mcwh/bOREREREREREREAfXOd74TlmXh6quvxvT0NI4dO3bO73v1q1+Nd7/73fiP//E/4vnPfz4qlQre+MY3nvU973nPe/Dud78bt99+O6666iq85jWvwWc/+1ns27dvqH8GQzx7EfKQlctlZLNZlEolZDKZUX40ERERERERERGNULPZxOHDh7Fv3z44jqO7nEC50H+7S83X2PFHREREREREREQUQgz+iIiIiIiIiIj65HkC1VYXAPDp+07gnZ96EKV65yK/i2i4uLkHEREREREREVGf3v03D+GGB34dr9wbxe88/SNY85J45FQZ//C2F8MwDN3l0Zhi8EdERERERERE1Ie1Whv33vM1/Lb9ZeAY8N+tRdQsByeXp/D5Ry7Ha66d010ijSkGf0REREREREREffjsQ6fxXea966+/03pw/de/+s3X4zXXfq+Osog444+IiIiIiIiAaquLD37pKbz/n55Es+PqLocoUL59bA0/aN15zn935fLnR1wN0QYGf0RERERERIT//Y2j+O//9CT+9Evfxie+eUx3OUTBcewuvOfRV2O/eQbtaAb3TX7fWf/6hxqfBoo8pkgPBn9ERERERESEe548jo9Fb8cjzk/i3/7T89G4+6Mo1tv43X98HF97ekV3eUT+43aBr38Q4mPfDwctAEDt5p/HzW/5Y+CHPoLy6/8v7vcOIIUGug98UnOxNK4444+IiIiIiGjMNTsurjr+SbzUeggAYKMDfO7t+O6/6aIm4vgfd6TwiZ99CZ6/d0JzpUQ+8vjfA1/4zzAAfNm9Hr9j/BQ+/10/DpgGcN2PIi0E/kHchhvxNNqHv4HIy3UXTOOIHX9ERERERERj7hsPPYl/b37qOV+/w/5l3OP8PP459ss4dO8XNFRG5F+dk3IDj0PePN7S+WW88KYbYZrG+r83DAPHUtcDAGKnvolmu6OlThpvDP6IaDi6beDePwMKRwAhdFdDREREROfR7nRx8LOvg2OoUOIXH8WZ5/+ns75nt7mMH3rkbXj8ySfwka8+g47raaiUyF9OPnU/AOBj7nfhlv2z+I+vufI531PNXYWqcBDpVPCjv/En+P/uPT7qMmmE2u227hKeg8EfEQ1eswR85DuBv/9F4APXA394A1Bd0l0VEREREZ3DZz79cSy4JwEA5ct/AMjuwNxr3wW87OzwLyZa+Nwn/gi//Q+P4Y+/fEhDpUT+4XkC5soTAICX3PYd+MRbXoSME33O9+2aSuPr3jUAgN+L/An+6q846y9IXv7yl+Otb30r3vrWtyKbzWJqagrvfve7IVRzy969e/Ge97wHb3zjG5HJZPCWt7wFAHDnnXfiJS95CeLxOHbt2oW3ve1tqNVqWv4MDP6IaPA+9WZg8eGN14UjwJd+a+N1pznqioiIiIjoHFxPIPPkXwEAHtv9emTe8OfyXxgGcNu/B3J70Ji9Ge/uvBkA8IviY/ho9L+h/tU/RJddfzTGTiwXsMM7DQD4jhd9x3m/77LpFL7s3QAAOGiewCft90A8/JlRlOhvQgDt2uj/2cZqtD//8z9HJBLBN7/5TXzgAx/A7//+7+NP//RP1//9+973Plx//fW4//778e53vxuHDh3Ca17zGrzuda/Dt7/9bXzyk5/EnXfeibe+9a2D/C94ybi5BxENlhDwjt/7nKcK4v6Pw7jxx9G66yOIPfbXMF78DuAV75YXlURERESkxb2HV3CL9wBgAAde9oaz/6WdBt52P0zXw9+8+2/wE9bnsM9cxMutB/FyPIiHn3orrr3yoJa6iXRbffIb2G0IFIwc8hM7zvt9B2ZS+KD7Qvyw9VVcZzyDqOH
"text/plain": [
"<Figure size 1600x800 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(16,8))\n",
"plt.plot(true_2, label='true')\n",
"plt.plot(pre_data, label='pre')\n",
"plt.legend()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"找论文 引用 峰值达不到 偏低 情况 通过分解之后 提高了 加在分析 结论\n",
"两个数据集篇幅一样 附录 图 未来数据引入 文章对比 3个亮点"
]
},
{
"cell_type": "code",
"execution_count": 83,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"mean_squared_error: 0.0020508589297795984\n",
"mean_absolute_error: 0.024749394165108834\n",
"rmse: 0.04528640998996938\n",
"r2 score: 0.9993959872891868\n"
]
}
],
"source": [
"from sklearn.metrics import mean_squared_error, mean_absolute_error # 评价指标\n",
"# 使用sklearn调用衡量线性回归的MSE 、 RMSE、 MAE、r2\n",
"from math import sqrt\n",
"from sklearn.metrics import mean_absolute_error\n",
"from sklearn.metrics import mean_squared_error\n",
"from sklearn.metrics import r2_score\n",
"print('mean_squared_error:', mean_squared_error(pre_data, true)) # mse)\n",
"print(\"mean_absolute_error:\", mean_absolute_error(pre_data, true)) # mae\n",
"print(\"rmse:\", sqrt(mean_squared_error(pre_data, true)))\n",
"print(\"r2 score:\", r2_score(pre_data[:], true[:]))#"
]
},
{
"cell_type": "code",
"execution_count": 77,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(1562, 1)\n"
]
}
],
"source": [
"# 使用MinMaxScaler进行归一化\n",
"from sklearn.preprocessing import MinMaxScaler\n",
"scaler = MinMaxScaler(feature_range=(0, 1))\n",
"pre = scaler.fit_transform(pre_data)\n",
"print(pre.shape)"
]
},
{
"cell_type": "code",
"execution_count": 78,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(1562, 1)\n"
]
}
],
"source": [
"from sklearn.preprocessing import MinMaxScaler\n",
"scaler = MinMaxScaler(feature_range=(0, 1))\n",
"true_data = scaler.fit_transform(true)\n",
"print(true_data.shape)"
]
},
{
"cell_type": "code",
"execution_count": 79,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"mean_squared_error: 0.00010504255695631394\n",
"mean_absolute_error: 0.00643843807544528\n",
"rmse: 0.010249027122430398\n",
"r2 score: 0.9993959872891868\n"
]
}
],
"source": [
"from sklearn.metrics import mean_squared_error, mean_absolute_error # 评价指标\n",
"# 使用sklearn调用衡量线性回归的MSE 、 RMSE、 MAE、r2\n",
"from math import sqrt\n",
"from sklearn.metrics import mean_absolute_error\n",
"from sklearn.metrics import mean_squared_error\n",
"from sklearn.metrics import r2_score\n",
"print('mean_squared_error:', mean_squared_error(pre, true_data)) # mse)\n",
"print(\"mean_absolute_error:\", mean_absolute_error(pre, true_data)) # mae\n",
"print(\"rmse:\", sqrt(mean_squared_error(pre, true_data)))\n",
"print(\"r2 score:\", r2_score(pre_data, true_2))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "base",
"language": "python",
"name": "python3"
},
"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.9.13"
}
},
"nbformat": 4,
"nbformat_minor": 2
}