網(wǎng)站管理公司seo推廣排名平臺有哪些
一.代碼流程(運行效果:短期光伏發(fā)電量短期預(yù)測(Python代碼,先對異常值處理,再基于XGBoost模型預(yù)測)_嗶哩嗶哩_bilibili
模型流程:
-
導(dǎo)入所需的庫,包括NumPy、Pandas、Matplotlib、Seaborn等。
-
讀取發(fā)電數(shù)據(jù)和天氣傳感器數(shù)據(jù),將它們存儲在
df_plt1_gen
和df_plt1_weather
中。 -
數(shù)據(jù)預(yù)處理:
- 對發(fā)電數(shù)據(jù)進行了一些處理,包括刪除不需要的列、將日期時間列轉(zhuǎn)換為日期時間類型,并根據(jù)逆變器創(chuàng)建了新的逆變器列。
- 天氣數(shù)據(jù)也被處理,刪除了不需要的列,將日期時間列轉(zhuǎn)換為日期時間類型。
-
確保數(shù)據(jù)完整性:
- 創(chuàng)建了一個完整的日期時間序列,以確保數(shù)據(jù)中沒有缺失值。
- 初始化一個空列表,用于存儲處理后的發(fā)電數(shù)據(jù)。
-
遍歷每個逆變器:
- 選擇特定逆變器的數(shù)據(jù)。
- 使用完整的日期時間序列合并數(shù)據(jù),以確保沒有缺失值。
- 添加逆變器列并將數(shù)據(jù)附加到列表中。
-
合并所有逆變器的數(shù)據(jù),創(chuàng)建了一個完整的數(shù)據(jù)集
df
。 -
提取并映射日期時間特征,計算特征之間的相關(guān)性,并檢查是否有負值。
-
創(chuàng)建一個新的數(shù)據(jù)集
df_eda
,用于探索性數(shù)據(jù)分析(EDA)。 -
處理異常值:
- 創(chuàng)建用于統(tǒng)計異常值的數(shù)據(jù)集,包括低異常值、高異常值和標準差范圍內(nèi)的數(shù)據(jù)點。
- 繪制散點圖可視化數(shù)據(jù)點。
-
統(tǒng)計低異常值的數(shù)量,包括低異常值且AC功率為0的數(shù)量。
-
繪制逆變器異常值計數(shù)的條形圖,包括AC功率為0的部分。
-
定義一個函數(shù)
outliers
用于處理異常值,并繪制散點圖可視化處理后的數(shù)據(jù)。 -
處理DAILY_YIELD特征的異常值,包括將夜間時間段的發(fā)電功率設(shè)為0。
-
插補缺失值:
- 使用KNNImputer插補缺失值。
- 使用時間插值、線性插值和多項式插值方法插補缺失值。
-
計算每天的總發(fā)電量,并將目標變量向后移動一天,以便進行預(yù)測。
-
使用季節(jié)性分解方法對目標變量進行分解,以查看趨勢和季節(jié)性成分。
-
創(chuàng)建基準模型,計算基準模型的RMSE(均方根誤差)。
-
準備數(shù)據(jù)用于機器學(xué)習(xí)模型和深度學(xué)習(xí)模型的訓(xùn)練和測試。
-
使用XGBoost模型進行訓(xùn)練和測試,評估模型的性能,并繪制預(yù)測結(jié)果。
-
最后,繪制了模型的特征重要性圖表。
二.數(shù)據(jù)集(68779條數(shù)據(jù))
這些數(shù)據(jù)是在印度的兩個太陽能發(fā)電廠收集的,時間跨度為34天。每對文件包含一個電力發(fā)電數(shù)據(jù)集和一個傳感器讀數(shù)數(shù)據(jù)集。電力發(fā)電數(shù)據(jù)集是在逆變器級別收集的,每個逆變器都連接著多行太陽能電池板。傳感器數(shù)據(jù)是在發(fā)電廠級別收集的,是單個傳感器陣列在發(fā)電廠中的最佳放置。
DATE_TIME
: 表示日期和時間的時間戳,記錄數(shù)據(jù)采集的具體時間點。PLANT_ID
: 發(fā)電廠的唯一標識符,用于區(qū)分不同的太陽能發(fā)電廠。SOURCE_KEY
: 太陽能發(fā)電設(shè)備的唯一標識符,用于區(qū)分不同的發(fā)電設(shè)備。DC_POWER
: 直流功率的測量值,表示從太陽能電池板產(chǎn)生的直流電功率。AC_POWER
: 交流功率的測量值,表示從逆變器轉(zhuǎn)換后的交流電功率。DAILY_YIELD
: 每天的發(fā)電量,表示在給定日期內(nèi)生成的總電量。TOTAL_YIELD
: 總發(fā)電量,表示從安裝以來生成的總電量。
這些列提供了關(guān)于太陽能發(fā)電廠的重要信息,包括發(fā)電設(shè)備的功率輸出、每天的發(fā)電量以及總發(fā)電量。通過這些數(shù)據(jù),可以進行發(fā)電量的分析、設(shè)備性能的評估以及故障檢測等任務(wù)。
開始時間
DATE_TIME | PLANT_ID | SOURCE_KEY | DC_POWER | AC_POWER | DAILY_YIELD | TOTAL_YIELD |
15-05-2020 00:00 | 4135001 | 1BY6WEcLGh8j5v7 | 0 | 0 | 0 | 6259559 |
15-05-2020 00:00 | 4135001 | 1IF53ai7Xc0U56Y | 0 | 0 | 0 | 6183645 |
15-05-2020 00:00 | 4135001 | 3PZuoBAID5Wc2HD | 0 | 0 | 0 | 6987759 |
15-05-2020 00:00 | 4135001 | 7JYdWkrLSPkdwr4 | 0 | 0 | 0 | 7602960 |
15-05-2020 00:00 | 4135001 | McdE0feGgRqW7Ca | 0 | 0 | 0 | 7158964 |
15-05-2020 00:00 | 4135001 | VHMLBKoKgIrUVDU | 0 | 0 | 0 | 7206408 |
15-05-2020 00:00 | 4135001 | WRmjgnKYAwPKWDb | 0 | 0 | 0 | 7028673 |
15-05-2020 00:00 | 4135001 | ZnxXDlPa8U1GXgE | 0 | 0 | 0 | 6522172 |
15-05-2020 00:00 | 4135001 | ZoEaEvLYb1n2sOq | 0 | 0 | 0 | 7098099 |
15-05-2020 00:00 | 4135001 | adLQvlD726eNBSB | 0 | 0 | 0 | 6271355 |
15-05-2020 00:00 | 4135001 | bvBOhCH3iADSZry | 0 | 0 | 0 | 6316803 |
15-05-2020 00:00 | 4135001 | iCRJl6heRkivqQ3 | 0 | 0 | 0 | 7177992 |
15-05-2020 00:00 | 4135001 | ih0vzX44oOqAx2f | 0 | 0 | 0 | 6185184 |
15-05-2020 00:00 | 4135001 | pkci93gMrogZuBj | 0 | 0 | 0 | 7169102 |
15-05-2020 00:00 | 4135001 | rGa61gmuvPhdLxV | 0 | 0 | 0 | 7111493 |
15-05-2020 00:00 | 4135001 | sjndEbLyjtCKgGv | 0 | 0 | 0 | 7016832 |
15-05-2020 00:00 | 4135001 | uHbuxQJl8lW7ozc | 0 | 0 | 0 | 7038681 |
15-05-2020 00:00 | 4135001 | wCURE6d3bPkepu2 | 0 | 0 | 0 | 6782598 |
15-05-2020 00:00 | 4135001 | z9Y9gH1T5YWrNuG | 0 | 0 | 0 | 7007866 |
15-05-2020 00:00 | 4135001 | zBIq5rxdHJRwDNY | 0 | 0 | 0 | 6339380 |
15-05-2020 00:00 | 4135001 | zVJPv84UY57bAof | 0 | 0 | 0 | 7116151 |
15-05-2020 00:15 | 4135001 | 1BY6WEcLGh8j5v7 | 0 | 0 | 0 | 6259559 |
15-05-2020 00:15 | 4135001 | 1IF53ai7Xc0U56Y | 0 | 0 | 0 | 6183645 |
15-05-2020 00:15 | 4135001 | 3PZuoBAID5Wc2HD | 0 | 0 | 0 | 6987759 |
15-05-2020 00:15 | 4135001 | 7JYdWkrLSPkdwr4 | 0 | 0 | 0 | 7602960 |
15-05-2020 00:15 | 4135001 | McdE0feGgRqW7Ca | 0 | 0 | 0 | 7158964 |
15-05-2020 00:15 | 4135001 | VHMLBKoKgIrUVDU | 0 | 0 | 0 | 7206408 |
15-05-2020 00:15 | 4135001 | WRmjgnKYAwPKWDb | 0 | 0 | 0 | 7028673 |
15-05-2020 00:15 | 4135001 | ZnxXDlPa8U1GXgE | 0 | 0 | 0 | 6522172 |
中期時間段數(shù)據(jù)展示
20-05-2020 06:45 | 4135001 | uHbuxQJl8lW7ozc | 947.875 | 92.0875 | 40.25 | 7071238.25 |
20-05-2020 06:45 | 4135001 | wCURE6d3bPkepu2 | 944.25 | 91.725 | 41.25 | 6815390.25 |
20-05-2020 06:45 | 4135001 | z9Y9gH1T5YWrNuG | 953.875 | 92.6625 | 40.375 | 7040505.375 |
20-05-2020 06:45 | 4135001 | zBIq5rxdHJRwDNY | 936.75 | 91 | 39.625 | 6372010.625 |
20-05-2020 06:45 | 4135001 | zVJPv84UY57bAof | 933.625 | 90.675 | 40.125 | 7148377.125 |
20-05-2020 07:00 | 4135001 | 1BY6WEcLGh8j5v7 | 1564.714286 | 152.9571429 | 68 | 6290165 |
20-05-2020 07:00 | 4135001 | 1IF53ai7Xc0U56Y | 1790.375 | 175.2375 | 76.625 | 6216506.625 |
20-05-2020 07:00 | 4135001 | 3PZuoBAID5Wc2HD | 1728.714286 | 169.1571429 | 73.71428571 | 7020585.714 |
20-05-2020 07:00 | 4135001 | 7JYdWkrLSPkdwr4 | 1690.571429 | 165.4285714 | 74.85714286 | 7635282.857 |
20-05-2020 07:00 | 4135001 | McdE0feGgRqW7Ca | 1628.714286 | 159.2571429 | 71.42857143 | 7192169.429 |
20-05-2020 07:00 | 4135001 | VHMLBKoKgIrUVDU | 1727.428571 | 169.0428571 | 76.57142857 | 7239618.571 |
20-05-2020 07:00 | 4135001 | WRmjgnKYAwPKWDb | 1700 | 166.3571429 | 72.57142857 | 7061004.571 |
20-05-2020 07:00 | 4135001 | YxYtjZvoooNbGkE | 1593.857143 | 155.7857143 | 70 | 7212546 |
20-05-2020 07:00 | 4135001 | ZnxXDlPa8U1GXgE | 1638.428571 | 160.1857143 | 59.57142857 | 6555195.571 |
20-05-2020 07:00 | 4135001 | ZoEaEvLYb1n2sOq | 1567 | 153.1857143 | 69.57142857 | 7130401.571 |
20-05-2020 07:00 | 4135001 | adLQvlD726eNBSB | 1818.125 | 178 | 79.125 | 6304592.125 |
20-05-2020 07:00 | 4135001 | bvBOhCH3iADSZry | 1535.714286 | 150 | 66.85714286 | 6346973.857 |
20-05-2020 07:00 | 4135001 | iCRJl6heRkivqQ3 | 1568.857143 | 153.2857143 | 69.85714286 | 7210787.857 |
20-05-2020 07:00 | 4135001 | ih0vzX44oOqAx2f | 1584.142857 | 154.8571429 | 69 | 6217346 |
20-05-2020 07:00 | 4135001 | pkci93gMrogZuBj | 1550.571429 | 151.5 | 68.57142857 | 7201417.571 |
20-05-2020 07:00 | 4135001 | rGa61gmuvPhdLxV | 1542 | 150.6714286 | 68.57142857 | 7143880.571 |
20-05-2020 07:00 | 4135001 | sjndEbLyjtCKgGv | 1587.714286 | 155.2428571 | 69.57142857 | 7049353.571 |
20-05-2020 07:00 | 4135001 | uHbuxQJl8lW7ozc | 1588.571429 | 155.3 | 69.71428571 | 7071267.714 |
20-05-2020 07:00 | 4135001 | wCURE6d3bPkepu2 | 1578.571429 | 154.3 | 70 | 6815419 |
截止時間的數(shù)據(jù)展示
17-06-2020 23:30 | 4135001 | wCURE6d3bPkepu2 | 0 | 0 | 5883 | 7028601 |
17-06-2020 23:30 | 4135001 | z9Y9gH1T5YWrNuG | 0 | 0 | 5819 | 7251204 |
17-06-2020 23:30 | 4135001 | zBIq5rxdHJRwDNY | 0 | 0 | 5817 | 6583369 |
17-06-2020 23:30 | 4135001 | zVJPv84UY57bAof | 0 | 0 | 5910 | 7363272 |
17-06-2020 23:45 | 4135001 | 1BY6WEcLGh8j5v7 | 0 | 0 | 5521 | 6485319 |
17-06-2020 23:45 | 4135001 | 1IF53ai7Xc0U56Y | 0 | 0 | 6034 | 6433566 |
17-06-2020 23:45 | 4135001 | 3PZuoBAID5Wc2HD | 0 | 0 | 6052 | 7237425 |
17-06-2020 23:45 | 4135001 | 7JYdWkrLSPkdwr4 | 0 | 0 | 5856 | 7846821 |
17-06-2020 23:45 | 4135001 | McdE0feGgRqW7Ca | 0 | 0 | 5992 | 7408587 |
17-06-2020 23:45 | 4135001 | VHMLBKoKgIrUVDU | 0 | 0 | 6007 | 7456208 |
17-06-2020 23:45 | 4135001 | WRmjgnKYAwPKWDb | 0 | 0 | 5953 | 7273532 |
17-06-2020 23:45 | 4135001 | YxYtjZvoooNbGkE | 0 | 0 | 5886 | 7425442 |
17-06-2020 23:45 | 4135001 | ZnxXDlPa8U1GXgE | 0 | 0 | 5929 | 6770737 |
17-06-2020 23:45 | 4135001 | ZoEaEvLYb1n2sOq | 0 | 0 | 5871 | 7341753 |
17-06-2020 23:45 | 4135001 | adLQvlD726eNBSB | 0 | 0 | 5237.142857 | 6524508 |
17-06-2020 23:45 | 4135001 | bvBOhCH3iADSZry | 0 | 0 | 5460 | 6539009 |
17-06-2020 23:45 | 4135001 | iCRJl6heRkivqQ3 | 0 | 0 | 5957 | 7426263 |
17-06-2020 23:45 | 4135001 | ih0vzX44oOqAx2f | 0 | 0 | 5758 | 6426129 |
17-06-2020 23:45 | 4135001 | pkci93gMrogZuBj | 0 | 0 | 5952 | 7415430 |
17-06-2020 23:45 | 4135001 | rGa61gmuvPhdLxV | 0 | 0 | 5950 | 7356897 |
17-06-2020 23:45 | 4135001 | sjndEbLyjtCKgGv | 0 | 0 | 5887 | 7261681 |
17-06-2020 23:45 | 4135001 | uHbuxQJl8lW7ozc | 0 | 0 | 5967 | 7287002 |
17-06-2020 23:45 | 4135001 | wCURE6d3bPkepu2 | 0 | 0 | 5147.625 | 7028601 |
17-06-2020 23:45 | 4135001 | z9Y9gH1T5YWrNuG | 0 | 0 | 5819 | 7251204 |
17-06-2020 23:45 | 4135001 | zBIq5rxdHJRwDNY | 0 | 0 | 5817 | 6583369 |
17-06-2020 23:45 | 4135001 | zVJPv84UY57bAof | 0 | 0 | 5910 | 7363272 |
?三.效果圖
對項目感興趣的,可以關(guān)注中間一行
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style('darkgrid')
import warnings
import datetime as dt
import matplotlib.dates as mdates
#代碼和數(shù)據(jù)集的壓縮包:https://mbd.pub/o/bread/mbd-ZJ6Zmphv
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style('darkgrid')
import warnings
import datetime as dt
import matplotlib.dates as mdates