227 KiB
227 KiB
In [1]:
import pandas as pd import numpy as np import matplotlib.pyplot as plt #新增加的两行 from pylab import mpl # 设置显示中文字体 mpl.rcParams["font.sans-serif"] = ["SimHei"] mpl.rcParams["axes.unicode_minus"] = False
In [2]:
zjxz_daily = pd.read_excel('./data/机器学习样表.xlsx', sheet_name=0, header=[0, 1]) old_cols = zjxz_daily.columns new_cols = [x[0].strip() if 'Unnamed' in x[1] else x[0] + '_' + x[1] for x in old_cols] zjxz_daily.columns = new_cols zjxz_daily.head()
Out[2]:
日期 | 企业名称 | 地址 | 省份 | 经度 | 纬度 | 烟囱高度(m) | 脱硝工艺 | 脱硝剂名称 | 脱硝设备数量 | ... | 供热量(吉焦) | 产渣量(吨) | 机组运行时间(小时) | 硫分(%) | 脱硫副产品产量(吨) | 脱硫剂使用量(吨) | 脱硫设施运行时间(小时) | 脱硝还原剂消耗量(吨) | 脱硝运行时间(小时) | 燃料消耗量(吨) | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 2018-10-01 | 浙江秀舟热电有限公司 | 嘉兴市南湖区凤桥镇 | 浙江省 | 120°51′5.54″ | 30°39′14.76″ | 80 | SNCR SCR | 氨水 | 3 | ... | 6536.83 | NaN | 24.0 | 0.51 | NaN | 5.06 | 24.0 | 2.98 | 24.0 | 323 |
1 | 2018-10-02 | 浙江秀舟热电有限公司 | 嘉兴市南湖区凤桥镇 | 浙江省 | 120°51′5.54″ | 30°39′14.76″ | 80 | SNCR SCR | 氨水 | 3 | ... | 2484.64 | NaN | 24.0 | 0.51 | NaN | 5.04 | 24.0 | 2.97 | 24.0 | 218 |
2 | 2018-10-03 | 浙江秀舟热电有限公司 | 嘉兴市南湖区凤桥镇 | 浙江省 | 120°51′5.54″ | 30°39′14.76″ | 80 | SNCR SCR | 氨水 | 3 | ... | 3020.83 | NaN | 24.0 | 0.51 | NaN | 5.04 | 24.0 | 2.95 | 24.0 | 212 |
3 | 2018-10-04 | 浙江秀舟热电有限公司 | 嘉兴市南湖区凤桥镇 | 浙江省 | 120°51′5.54″ | 30°39′14.76″ | 80 | SNCR SCR | 氨水 | 3 | ... | 5599.23 | NaN | 24.0 | 0.51 | 72.52 | 5.03 | 24.0 | 2.98 | 24.0 | 223 |
4 | 2018-10-05 | 浙江秀舟热电有限公司 | 嘉兴市南湖区凤桥镇 | 浙江省 | 120°51′5.54″ | 30°39′14.76″ | 80 | SNCR SCR | 氨水 | 3 | ... | 4702.65 | NaN | 24.0 | 0.51 | NaN | 5.06 | 24.0 | 3.01 | 24.0 | 243 |
5 rows × 44 columns
In [3]:
zjxz_daily_data = zjxz_daily[['日期', '企业名称', '发电量(千瓦时)', '供热量(吉焦)', '燃料消耗量(吨)']].copy()
In [49]:
zjxz_daily_data
Out[49]:
日期 | 企业名称 | 发电量(千瓦时) | 供热量(吉焦) | 燃料消耗量(吨) | |
---|---|---|---|---|---|
0 | 2018-10-01 | 浙江秀舟热电有限公司 | 156796.00 | 6536.83 | 323 |
1 | 2018-10-02 | 浙江秀舟热电有限公司 | 133984.00 | 2484.64 | 218 |
2 | 2018-10-03 | 浙江秀舟热电有限公司 | 134023.00 | 3020.83 | 212 |
3 | 2018-10-04 | 浙江秀舟热电有限公司 | 124765.00 | 5599.23 | 223 |
4 | 2018-10-05 | 浙江秀舟热电有限公司 | 134414.00 | 4702.65 | 243 |
... | ... | ... | ... | ... | ... |
1173 | 2022-01-22 | 浙江秀舟热电有限公司 | 52.24 | 12472.00 | 822 |
1174 | 2022-01-23 | 浙江秀舟热电有限公司 | 51.36 | 12051.00 | 790 |
1175 | 2022-01-24 | 浙江秀舟热电有限公司 | 51.12 | 11276.00 | 751 |
1176 | 2022-01-25 | 浙江秀舟热电有限公司 | 49.32 | 11007.00 | 672 |
1177 | 2022-01-26 | 浙江秀舟热电有限公司 | 29.64 | 8132.00 | 484 |
1178 rows × 5 columns
In [52]:
zjxz_emiss_data = pd.read_csv('data/train_data.csv') zjxz_emiss_data
Out[52]:
days | 发电量(千瓦时) | 供热量(吉焦) | 机组运行时间(小时) | 硫分(%) | 脱硫剂使用量(吨) | 脱硫设施运行时间(小时) | 脱硝还原剂消耗量(吨) | 脱硝运行时间(小时) | 燃料消耗量(吨) | ... | cSO2 | cO2 | csmoke | flow | rNOx | rO2 | temp | rSO2 | rsmoke | day_of_year | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 2018-10-01 | 156796.00 | 6536.83 | 24.0 | 0.51 | 5.06 | 24.0 | 2.98 | 24.0 | 323 | ... | 2.148473e+07 | 3.745944e+07 | 6.519466e+05 | 162345.192917 | 28.981417 | 9.900000 | 51.250000 | 5.581667 | 0.209167 | 273 |
1 | 2018-10-02 | 133984.00 | 2484.64 | 24.0 | 0.51 | 5.04 | 24.0 | 2.97 | 24.0 | 218 | ... | 1.587722e+07 | 2.832146e+07 | 3.656575e+05 | 140175.330833 | 22.220750 | 9.400000 | 50.679167 | 4.364167 | 0.190417 | 274 |
2 | 2018-10-03 | 134023.00 | 3020.83 | 24.0 | 0.51 | 5.04 | 24.0 | 2.95 | 24.0 | 212 | ... | 2.829086e+07 | 3.174159e+07 | 5.181773e+05 | 154686.184167 | 24.816708 | 8.550000 | 52.808333 | 7.580000 | 0.139583 | 275 |
3 | 2018-10-04 | 124765.00 | 5599.23 | 24.0 | 0.51 | 5.03 | 24.0 | 2.98 | 24.0 | 223 | ... | 1.030569e+07 | 2.511504e+07 | 2.299438e+06 | 120345.545833 | 21.875125 | 10.202083 | 48.854167 | 2.808958 | 0.893333 | 276 |
4 | 2018-10-05 | 134414.00 | 4702.65 | 24.0 | 0.51 | 5.06 | 24.0 | 3.01 | 24.0 | 243 | ... | 1.830254e+06 | 4.106346e+07 | 6.230433e+06 | 162533.103542 | 25.605917 | 11.497917 | 45.783333 | 0.393333 | 2.141875 | 277 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1082 | 2022-01-22 | 52.24 | 12472.00 | 24.0 | 0.59 | 8.46 | 24.0 | 4.56 | 24.0 | 822 | ... | 3.626034e+06 | 4.149625e+07 | 6.512159e+06 | 218349.604167 | 2.603662 | 7.921417 | 55.441542 | 0.690904 | 1.242762 | 21 |
1083 | 2022-01-23 | 51.36 | 12051.00 | 24.0 | 0.59 | 8.46 | 24.0 | 4.58 | 24.0 | 790 | ... | 4.074431e+06 | 4.422277e+07 | 6.203422e+06 | 210121.608333 | 6.638867 | 8.756333 | 54.574333 | 0.810112 | 1.230213 | 22 |
1084 | 2022-01-24 | 51.12 | 11276.00 | 24.0 | 0.59 | 8.43 | 24.0 | 4.57 | 24.0 | 751 | ... | 4.928013e+06 | 4.655727e+07 | 6.101480e+06 | 211378.329167 | 12.277371 | 9.110167 | 53.031042 | 0.973396 | 1.203483 | 23 |
1085 | 2022-01-25 | 49.32 | 11007.00 | 24.0 | 0.59 | 8.43 | 24.0 | 4.56 | 24.0 | 672 | ... | 4.584759e+06 | 7.959093e+07 | 6.326125e+06 | 240801.208333 | 5.684492 | 13.636042 | 42.908458 | 0.807300 | 1.098229 | 24 |
1086 | 2022-01-26 | 29.64 | 8132.00 | 24.0 | 0.59 | 8.44 | 24.0 | 4.57 | 24.0 | 484 | ... | 5.701371e+06 | 9.866431e+07 | 6.632631e+06 | 263197.579167 | 1.672292 | 15.621583 | 36.412917 | 0.904429 | 1.050008 | 25 |
1087 rows × 165 columns
In [60]:
zjxz_save_cols = zjxz_emiss_data.columns[:3].tolist() + ['燃料消耗量(吨)'] + zjxz_emiss_data.columns[-7:-1].tolist() zjxz_save_data = zjxz_emiss_data[zjxz_save_cols].copy() zjxz_save_data
Out[60]:
days | 发电量(千瓦时) | 供热量(吉焦) | 燃料消耗量(吨) | flow | rNOx | rO2 | temp | rSO2 | rsmoke | |
---|---|---|---|---|---|---|---|---|---|---|
0 | 2018-10-01 | 156796.00 | 6536.83 | 323 | 162345.192917 | 28.981417 | 9.900000 | 51.250000 | 5.581667 | 0.209167 |
1 | 2018-10-02 | 133984.00 | 2484.64 | 218 | 140175.330833 | 22.220750 | 9.400000 | 50.679167 | 4.364167 | 0.190417 |
2 | 2018-10-03 | 134023.00 | 3020.83 | 212 | 154686.184167 | 24.816708 | 8.550000 | 52.808333 | 7.580000 | 0.139583 |
3 | 2018-10-04 | 124765.00 | 5599.23 | 223 | 120345.545833 | 21.875125 | 10.202083 | 48.854167 | 2.808958 | 0.893333 |
4 | 2018-10-05 | 134414.00 | 4702.65 | 243 | 162533.103542 | 25.605917 | 11.497917 | 45.783333 | 0.393333 | 2.141875 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1082 | 2022-01-22 | 52.24 | 12472.00 | 822 | 218349.604167 | 2.603662 | 7.921417 | 55.441542 | 0.690904 | 1.242762 |
1083 | 2022-01-23 | 51.36 | 12051.00 | 790 | 210121.608333 | 6.638867 | 8.756333 | 54.574333 | 0.810112 | 1.230213 |
1084 | 2022-01-24 | 51.12 | 11276.00 | 751 | 211378.329167 | 12.277371 | 9.110167 | 53.031042 | 0.973396 | 1.203483 |
1085 | 2022-01-25 | 49.32 | 11007.00 | 672 | 240801.208333 | 5.684492 | 13.636042 | 42.908458 | 0.807300 | 1.098229 |
1086 | 2022-01-26 | 29.64 | 8132.00 | 484 | 263197.579167 | 1.672292 | 15.621583 | 36.412917 | 0.904429 | 1.050008 |
1087 rows × 10 columns
In [61]:
for col in ['rNOx', 'rSO2', 'rsmoke']: zjxz_save_data[col] = zjxz_save_data[col]*101800*273 / (101325 * (273 + zjxz_save_data.temp))
In [62]:
zjxz_save_data
Out[62]:
days | 发电量(千瓦时) | 供热量(吉焦) | 燃料消耗量(吨) | flow | rNOx | rO2 | temp | rSO2 | rsmoke | |
---|---|---|---|---|---|---|---|---|---|---|
0 | 2018-10-01 | 156796.00 | 6536.83 | 323 | 162345.192917 | 24.515087 | 9.900000 | 51.250000 | 4.721475 | 0.176932 |
1 | 2018-10-02 | 133984.00 | 2484.64 | 218 | 140175.330833 | 18.829456 | 9.400000 | 50.679167 | 3.698115 | 0.161356 |
2 | 2018-10-03 | 134023.00 | 3020.83 | 212 | 154686.184167 | 20.891797 | 8.550000 | 52.808333 | 6.381178 | 0.117507 |
3 | 2018-10-04 | 124765.00 | 5599.23 | 223 | 120345.545833 | 18.641687 | 10.202083 | 48.854167 | 2.393757 | 0.761287 |
4 | 2018-10-05 | 134414.00 | 4702.65 | 243 | 162533.103542 | 22.031219 | 11.497917 | 45.783333 | 0.338422 | 1.842860 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
1082 | 2022-01-22 | 52.24 | 12472.00 | 822 | 218349.604167 | 2.174305 | 7.921417 | 55.441542 | 0.576970 | 1.037824 |
1083 | 2022-01-23 | 51.36 | 12051.00 | 790 | 210121.608333 | 5.558760 | 8.756333 | 54.574333 | 0.678312 | 1.030064 |
1084 | 2022-01-24 | 51.12 | 11276.00 | 751 | 211378.329167 | 10.328571 | 9.110167 | 53.031042 | 0.818888 | 1.012453 |
1085 | 2022-01-25 | 49.32 | 11007.00 | 672 | 240801.208333 | 4.935421 | 13.636042 | 42.908458 | 0.700918 | 0.953511 |
1086 | 2022-01-26 | 29.64 | 8132.00 | 484 | 263197.579167 | 1.482407 | 15.621583 | 36.412917 | 0.801733 | 0.930782 |
1087 rows × 10 columns
In [4]:
xswx_daily = pd.read_excel('./data/机器学习样表.xlsx', sheet_name=3) xswx_daily.columns
Out[4]:
Index(['企业名称', '地址', '省份', '经度', '纬度', '烟囱高度(m)', '机组数量', '单机容量(MW)', '生产设备类型', '锅炉额定蒸发量 t/h ', '汽轮机类型', '压力参数', '冷却方式', '脱硝工艺', '脱硫工艺', '除尘工艺', 'Unnamed: 16', '日期', '机组编号', '投产日期', '燃煤干燥无灰基挥发分vda(%)', '入炉煤低位发热量(GJ/t)', '入炉煤消耗量发电(吨)', '入炉煤消耗量供热(吨)', '脱硝还原剂使用量a侧(吨)', '脱硝还原剂使用量b侧(吨)', '脱硝设施运行时间a侧(小时)', '脱硝设施运行时间b侧(小时)', '发电量', '供热量(吉焦)', '机组运行时间', '硫分(%)', '脱硫副产品产量(吨)', '脱硫剂使用量(吨)', '脱硫设施运行时间(小时)', '脱硝还原剂消耗量(吨)', '燃料消耗量(吨)', '石灰石总量(吨)', 'Unnamed: 38', 'Unnamed: 39', '日期.1', '机组编号.1', '投产日期.1', '燃煤干燥无灰基挥发分vda(%).1', '入炉煤低位发热量(GJ/t).1', '入炉煤消耗量发电(吨).1', '入炉煤消耗量供热(吨).1', '脱硝还原剂使用量a侧(吨).1', '脱硝还原剂使用量b侧(吨).1', '脱硝设施运行时间a侧(小时).1', '脱硝设施运行时间b侧(小时).1', '发电量(万千瓦时)', '供热量(吉焦)', '机组运行时间(小时)', '硫分(%).1', '脱硫副产品产量(吨).1', '脱硫剂使用量(吨).1', '脱硫设施运行时间(小时).1', '脱硝还原剂消耗量(吨).1', '燃料消耗量(吨).1', '石灰石总量(吨).1'], dtype='object')
In [5]:
xswx_daily_unit_1 = xswx_daily[xswx_daily['日期'] >= '2021-01-01'][['日期', '发电量', '供热量(吉焦)', '燃料消耗量(吨)']].copy() xswx_daily_unit_1.columns = ['days', "发电量_1(万千瓦时)", '供热量_1(吉焦)', '燃料消耗量_1(吨)'] xswx_daily_unit_2 = xswx_daily[xswx_daily['日期.1'] >= '2021-01-01'][ ['日期.1', '发电量(万千瓦时)', '供热量(吉焦)', '燃料消耗量(吨).1']].copy() xswx_daily_unit_2.columns = ['days', "发电量_2(万千瓦时)", '供热量_2(吉焦)', '燃料消耗量_2(吨)'] xswx_daily_unit_2.tail(2)
Out[5]:
days | 发电量_2(万千瓦时) | 供热量_2(吉焦) | 燃料消耗量_2(吨) | |
---|---|---|---|---|
149 | 2021-05-30 | 1033 | 0.0 | 4763.4 |
150 | 2021-05-31 | 909 | 0.0 | 4516.5 |
In [6]:
min_start = min(xswx_daily_unit_1.days.min(), xswx_daily_unit_2.days.min()) max_end = max(xswx_daily_unit_1.days.max(), xswx_daily_unit_2.days.max()) date_range = pd.date_range(min_start, max_end, freq='D') date_range
Out[6]:
DatetimeIndex(['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04', '2021-01-05', '2021-01-06', '2021-01-07', '2021-01-08', '2021-01-09', '2021-01-10', ... '2021-05-22', '2021-05-23', '2021-05-24', '2021-05-25', '2021-05-26', '2021-05-27', '2021-05-28', '2021-05-29', '2021-05-30', '2021-05-31'], dtype='datetime64[ns]', length=151, freq='D')
In [7]:
xswx_daily_unit_1 = xswx_daily_unit_1.set_index('days').reindex(date_range).fillna(0) xswx_daily_unit_2 = xswx_daily_unit_2.set_index('days').reindex(date_range).fillna(0)
In [8]:
xswx_daily_data = pd.concat([xswx_daily_unit_1, xswx_daily_unit_2], axis=1)
In [9]:
xswx_daily_data['企业名称'] = '武乡西山发电有限责任公司' xswx_daily_data['发电量(万千瓦时)'] = xswx_daily_data['发电量_1(万千瓦时)'] + xswx_daily_data['发电量_2(万千瓦时)'] xswx_daily_data['供热量(吉焦)'] = xswx_daily_data['供热量_1(吉焦)'] + xswx_daily_data['供热量_2(吉焦)'] xswx_daily_data['燃料消耗量(吨)'] = xswx_daily_data['燃料消耗量_1(吨)'] + xswx_daily_data['燃料消耗量_2(吨)']
In [10]:
xswx_daily_data
Out[10]:
发电量_1(万千瓦时) | 供热量_1(吉焦) | 燃料消耗量_1(吨) | 发电量_2(万千瓦时) | 供热量_2(吉焦) | 燃料消耗量_2(吨) | 企业名称 | 发电量(万千瓦时) | 供热量(吉焦) | 燃料消耗量(吨) | |
---|---|---|---|---|---|---|---|---|---|---|
2021-01-01 | 952.0 | 11032.5 | 5478.8 | 893 | 0.0 | 4689.7 | 武乡西山发电有限责任公司 | 1845.0 | 11032.5 | 10168.5 |
2021-01-02 | 1127.0 | 11180.5 | 6125.4 | 1061 | 0.0 | 5455.5 | 武乡西山发电有限责任公司 | 2188.0 | 11180.5 | 11580.9 |
2021-01-03 | 1051.0 | 11197.7 | 5717.6 | 1053 | 0.0 | 4060.5 | 武乡西山发电有限责任公司 | 2104.0 | 11197.7 | 9778.1 |
2021-01-04 | 1179.0 | 11146.6 | 6172.5 | 1237 | 0.0 | 5574.7 | 武乡西山发电有限责任公司 | 2416.0 | 11146.6 | 11747.2 |
2021-01-05 | 1142.0 | 10922.4 | 6053.3 | 1082 | 0.0 | 6363.9 | 武乡西山发电有限责任公司 | 2224.0 | 10922.4 | 12417.2 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
2021-05-27 | 0.0 | 0.0 | 0.0 | 1192 | 0.0 | 5684.3 | 武乡西山发电有限责任公司 | 1192.0 | 0.0 | 5684.3 |
2021-05-28 | 0.0 | 0.0 | 0.0 | 1159 | 0.0 | 5349.3 | 武乡西山发电有限责任公司 | 1159.0 | 0.0 | 5349.3 |
2021-05-29 | 0.0 | 0.0 | 0.0 | 998 | 0.0 | 4851.2 | 武乡西山发电有限责任公司 | 998.0 | 0.0 | 4851.2 |
2021-05-30 | 0.0 | 0.0 | 0.0 | 1033 | 0.0 | 4763.4 | 武乡西山发电有限责任公司 | 1033.0 | 0.0 | 4763.4 |
2021-05-31 | 0.0 | 0.0 | 0.0 | 909 | 0.0 | 4516.5 | 武乡西山发电有限责任公司 | 909.0 | 0.0 | 4516.5 |
151 rows × 10 columns
In [11]:
xswx_emiss_data = pd.read_excel('data/机器学习样表_单位换算.xlsx', sheet_name=2) xswx_emiss_data
Out[11]:
Unnamed: 0 | Unnamed: 1 | 监控点名称 | 二氧化硫浓度(mg/m3) | 氮氧化物浓度(mg/m3) | 烟尘浓度(mg/m3) | 流速(m/s) | 流量(m3/h) | Unnamed: 8 | Unnamed: 9 | ... | Unnamed: 14 | 监控点名称.1 | 二氧化硫浓度(mg/m3).1 | 氮氧化物浓度(mg/m3).1 | 烟尘浓度(mg/m3).1 | 流速(m/s).1 | 流量(m3/h).1 | Unnamed: 21 | Unnamed: 22 | 状态.1 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 2021.1.1 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 20.15 | 31.49 | 2.49 | 11.24 | 1558502.96 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 22.00 | 33.09 | 2.25 | 5.00 | 731609.00 | NaN | NaN | 正常运行 |
1 | 2021.1.2 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 20.27 | 31.65 | 2.51 | 12.03 | 1648629.50 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 20.45 | 34.37 | 2.37 | 9.18 | 1326387.42 | NaN | NaN | 正常运行 |
2 | 2021.1.3 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 19.72 | 31.68 | 2.50 | 12.11 | 1656682.63 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 19.82 | 33.55 | 2.38 | 9.85 | 1417186.13 | NaN | NaN | 正常运行 |
3 | 2021.1.4 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 17.64 | 31.51 | 2.52 | 11.79 | 1610496.46 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 20.18 | 32.47 | 2.39 | 9.07 | 1304455.88 | NaN | NaN | 正常运行 |
4 | 2021.1.5 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 18.66 | 31.72 | 2.50 | 11.97 | 1652330.08 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 21.07 | 33.73 | 2.42 | 9.71 | 1390566.88 | NaN | NaN | 正常运行 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
113 | 2021.4.26 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 0.22 | 0.01 | 0.19 | 0.00 | 0.00 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 18.31 | 35.41 | 2.03 | 9.59 | 1316204.83 | NaN | NaN | 正常运行 |
114 | 2021.4.27 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 0.00 | 0.01 | 0.21 | 0.00 | 0.00 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 0.14 | 0.43 | 0.08 | 1.44 | 193474.61 | NaN | NaN | 停运 |
115 | 2021.4.28 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 0.01 | 0.00 | 0.25 | 0.00 | 0.00 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 0.00 | 0.01 | 0.09 | 2.69 | 467356.96 | NaN | NaN | 停运 |
116 | 2021.4.29 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 0.00 | 0.01 | 0.26 | 0.00 | 0.00 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 0.01 | 0.05 | 0.07 | 2.30 | 401366.08 | NaN | NaN | 停运 |
117 | 2021.4.30 | 武乡西山发电有限责任公司 | 1号炉废气排放口 | 0.00 | 0.02 | 0.56 | 0.00 | 0.00 | NaN | NaN | ... | 武乡西山发电有限责任公司 | 2号炉废气排放口 | 3.96 | 22.90 | 0.68 | 6.09 | 932694.63 | NaN | NaN | 停运 |
118 rows × 24 columns
In [12]:
xswx_emiss_data_1 = xswx_emiss_data[np.array(xswx_emiss_data.columns)[[0, 3, 4, 5, 6, 7, 10]]].copy() xswx_emiss_data_2 = xswx_emiss_data[np.array(xswx_emiss_data.columns)[[13, 16, 17, 18, 19, 20, 23]]].copy() xswx_emiss_data_1
Out[12]:
Unnamed: 0 | 二氧化硫浓度(mg/m3) | 氮氧化物浓度(mg/m3) | 烟尘浓度(mg/m3) | 流速(m/s) | 流量(m3/h) | 状态 | |
---|---|---|---|---|---|---|---|
0 | 2021.1.1 | 20.15 | 31.49 | 2.49 | 11.24 | 1558502.96 | 正常运行 |
1 | 2021.1.2 | 20.27 | 31.65 | 2.51 | 12.03 | 1648629.50 | 正常运行 |
2 | 2021.1.3 | 19.72 | 31.68 | 2.50 | 12.11 | 1656682.63 | 正常运行 |
3 | 2021.1.4 | 17.64 | 31.51 | 2.52 | 11.79 | 1610496.46 | 正常运行 |
4 | 2021.1.5 | 18.66 | 31.72 | 2.50 | 11.97 | 1652330.08 | 正常运行 |
... | ... | ... | ... | ... | ... | ... | ... |
113 | 2021.4.26 | 0.22 | 0.01 | 0.19 | 0.00 | 0.00 | 停运 |
114 | 2021.4.27 | 0.00 | 0.01 | 0.21 | 0.00 | 0.00 | 停运 |
115 | 2021.4.28 | 0.01 | 0.00 | 0.25 | 0.00 | 0.00 | 停运 |
116 | 2021.4.29 | 0.00 | 0.01 | 0.26 | 0.00 | 0.00 | 停运 |
117 | 2021.4.30 | 0.00 | 0.02 | 0.56 | 0.00 | 0.00 | 停运 |
118 rows × 7 columns
In [13]:
xswx_emiss_data_1.columns = ['days'] + xswx_emiss_data_1.columns[1:].tolist() xswx_emiss_data_2.columns = xswx_emiss_data_1.columns.tolist()
In [14]:
xswx_emiss_data_1.index = pd.to_datetime(xswx_emiss_data_1.days)
In [15]:
xswx_emiss_data_2.index = pd.to_datetime(xswx_emiss_data_2.days)
In [16]:
xswx_emiss_data_1.drop(columns=['days'], inplace=True) xswx_emiss_data_2.drop(columns=['days'], inplace=True)
In [17]:
xswx_emiss_data_1.columns = [f'机组1_{x}' for x in xswx_emiss_data_1.columns] xswx_emiss_data_2.columns = [f'机组2_{x}' for x in xswx_emiss_data_2.columns]
In [18]:
xswx_emiss_data_1.reset_index().days.value_counts()
Out[18]:
2021-01-01 1 2021-03-17 1 2021-03-29 1 2021-03-28 1 2021-03-27 1 .. 2021-02-05 1 2021-02-04 1 2021-02-03 1 2021-02-02 1 2021-04-30 1 Name: days, Length: 118, dtype: int64
In [64]:
wxxs_save_data = pd.concat([xswx_daily_data, xswx_emiss_data_1, xswx_emiss_data_2], axis=1) wxxs_save_data.index = wxxs_save_data.index.astype(str)
邯郸东郊¶
In [20]:
hddj_daily = pd.read_excel('data/机器学习样表_单位换算.xlsx', sheet_name=5) hddj_daily.columns
Out[20]:
Index(['企业名称', '地址', '省份', '经度', '纬度', '机组数量', '单机容量(MW)', '生产设备类型', '锅炉额定蒸发量 t/h ', '汽轮机类型', '压力参数', '冷却方式', '脱硝工艺', '脱硫工艺', '除尘工艺', '日期', '机组编号', '投产日期', '燃料类型', '低位发热量(GJ/t)', '产灰量(吨)', '发电量(万千瓦时)', '供热量', '产渣量', '机组运行时间', '发电煤耗(克/千瓦时)', '燃料消耗量(吨)', 'Unnamed: 27', '日期.1', '机组编号.1', '投产日期.1', '燃料类型.1', '低位发热量(GJ/t).1', '产灰量(吨).1', '发电量(万千瓦时).1', '供热量.1', '产渣量.1', '机组运行时间.1', '发电煤耗(克/千瓦时).1', '燃料消耗量(吨).1'], dtype='object')
In [21]:
hddj_daily_1 = hddj_daily[['日期', '发电量(万千瓦时)', '供热量', '燃料消耗量(吨)']].copy() hddj_daily_1.columns = ['days', "发电量_1(万千瓦时)", '供热量_1(吉焦)', '燃料消耗量_1(吨)'] hddj_daily_2 = hddj_daily[['日期.1', '发电量(万千瓦时).1', '供热量.1', '燃料消耗量(吨).1']].copy() hddj_daily_2.columns = ['days', "发电量_2(万千瓦时)", '供热量_2(吉焦)', '燃料消耗量_2(吨)']
In [22]:
min_start = min(hddj_daily_1.days.min(), hddj_daily_2.days.min()) max_end = max(hddj_daily_1.days.max(), hddj_daily_2.days.max()) date_range = pd.date_range(min_start, max_end, freq='D') date_range
Out[22]:
DatetimeIndex(['2022-01-01', '2022-01-02', '2022-01-03', '2022-01-04', '2022-01-05', '2022-01-06', '2022-01-07', '2022-01-08', '2022-01-09', '2022-01-10', '2022-01-11', '2022-01-12', '2022-01-13', '2022-01-14', '2022-01-15', '2022-01-16', '2022-01-17', '2022-01-18', '2022-01-19', '2022-01-20', '2022-01-21', '2022-01-22', '2022-01-23', '2022-01-24', '2022-01-25', '2022-01-26', '2022-01-27', '2022-01-28', '2022-01-29', '2022-01-30', '2022-01-31', '2022-02-01', '2022-02-02', '2022-02-03', '2022-02-04', '2022-02-05', '2022-02-06', '2022-02-07', '2022-02-08', '2022-02-09', '2022-02-10', '2022-02-11', '2022-02-12', '2022-02-13', '2022-02-14', '2022-02-15', '2022-02-16', '2022-02-17', '2022-02-18', '2022-02-19', '2022-02-20', '2022-02-21', '2022-02-22', '2022-02-23', '2022-02-24', '2022-02-25', '2022-02-26', '2022-02-27', '2022-02-28'], dtype='datetime64[ns]', freq='D')
In [23]:
hddj_daily_1 = hddj_daily_1.set_index('days').reindex(date_range).fillna(0) hddj_daily_2 = hddj_daily_2.set_index('days').reindex(date_range).fillna(0)
In [24]:
hddj_daily_1
Out[24]:
发电量_1(万千瓦时) | 供热量_1(吉焦) | 燃料消耗量_1(吨) | |
---|---|---|---|
2022-01-01 | 494.20 | 30829 | 2861 |
2022-01-02 | 554.30 | 32122 | 2536 |
2022-01-03 | 558.30 | 33451 | 2911 |
2022-01-04 | 529.70 | 33179 | 3023 |
2022-01-05 | 563.90 | 29731 | 3191 |
2022-01-06 | 561.00 | 32505 | 3357 |
2022-01-07 | 570.00 | 33189 | 3231 |
2022-01-08 | 526.80 | 31881 | 2765 |
2022-01-09 | 517.10 | 30799 | 2574 |
2022-01-10 | 512.80 | 29277 | 2512 |
2022-01-11 | 521.20 | 32460 | 2757 |
2022-01-12 | 543.32 | 33593 | 3132 |
2022-01-13 | 512.52 | 33326 | 2950 |
2022-01-14 | 495.42 | 31417 | 2755 |
2022-01-15 | 500.06 | 32434 | 2834 |
2022-01-16 | 527.93 | 31986 | 3182 |
2022-01-17 | 496.50 | 32268 | 3121 |
2022-01-18 | 529.31 | 31814 | 3241 |
2022-01-19 | 552.01 | 30414 | 3274 |
2022-01-20 | 544.00 | 32416 | 3594 |
2022-01-21 | 561.29 | 34300 | 3891 |
2022-01-22 | 574.00 | 38342 | 4276 |
2022-01-23 | 534.94 | 37444 | 3767 |
2022-01-24 | 543.91 | 34539 | 3175 |
2022-01-25 | 538.31 | 36753 | 3860 |
2022-01-26 | 529.59 | 34148 | 3749 |
2022-01-27 | 525.88 | 33630 | 3725 |
2022-01-28 | 545.06 | 34181 | 3866 |
2022-01-29 | 522.68 | 30637 | 3395 |
2022-01-30 | 509.69 | 34254 | 3101 |
2022-01-31 | 516.51 | 32145 | 2985 |
2022-02-01 | 500.46 | 25687 | 2662 |
2022-02-02 | 477.03 | 29061 | 2821 |
2022-02-03 | 439.93 | 29598 | 2779 |
2022-02-04 | 452.76 | 28709 | 2523 |
2022-02-05 | 508.35 | 30133 | 2884 |
2022-02-06 | 485.41 | 27635 | 2902 |
2022-02-07 | 469.75 | 28259 | 2939 |
2022-02-08 | 452.87 | 26685 | 2556 |
2022-02-09 | 470.87 | 26037 | 2691 |
2022-02-10 | 490.75 | 25530 | 2901 |
2022-02-11 | 467.50 | 24359 | 2790 |
2022-02-12 | 446.31 | 24180 | 2766 |
2022-02-13 | 466.12 | 25274 | 3054 |
2022-02-14 | 464.96 | 29338 | 2533 |
2022-02-15 | 466.40 | 27394 | 2611 |
2022-02-16 | 493.26 | 27639 | 2905 |
2022-02-17 | 495.53 | 30228 | 2894 |
2022-02-18 | 524.59 | 28126 | 3030 |
2022-02-19 | 466.49 | 27575 | 2470 |
2022-02-20 | 503.46 | 27424 | 2799 |
2022-02-21 | 521.02 | 26965 | 3098 |
2022-02-22 | 528.08 | 26886 | 3317 |
2022-02-23 | 533.95 | 25022 | 3174 |
2022-02-24 | 505.76 | 26727 | 3079 |
2022-02-25 | 445.43 | 21930 | 2580 |
2022-02-26 | 491.01 | 16645 | 2733 |
2022-02-27 | 465.33 | 17884 | 2862 |
2022-02-28 | 487.21 | 15457 | 3029 |
In [25]:
hddj_daily_data = pd.concat([hddj_daily_1, hddj_daily_2], axis=1)
In [26]:
hddj_emiss_data = pd.read_excel('data/机器学习样表_单位换算.xlsx', sheet_name=4) hddj_emiss_data.columns
Out[26]:
Index(['时间', '企业名称', '监测点', '流量 (m3/h)', 'NOx浓度(mg/m3)', 'SO2浓度(mg/m3)', '烟尘浓度(mg/m3)', '含氧量(%)', '温度(℃)', '烟气湿度(%)', '烟气压力(千帕)', '烟气流速(m/s)', '状态', 'Unnamed: 13', '时间.1', '企业名称.1', '监测点.1', '流量 (m3/h).1', 'NOx浓度(mg/m3).1', 'SO2浓度(mg/m3).1', '烟尘浓度(mg/m3).1', '含氧量(%).1', '温度(℃).1', '烟气湿度(%).1', '烟气压力(千帕).1', '烟气流速(m/s).1', '状态.1'], dtype='object')
In [27]:
hddj_emiss_data.head(2)
Out[27]:
时间 | 企业名称 | 监测点 | 流量 (m3/h) | NOx浓度(mg/m3) | SO2浓度(mg/m3) | 烟尘浓度(mg/m3) | 含氧量(%) | 温度(℃) | 烟气湿度(%) | ... | 流量 (m3/h).1 | NOx浓度(mg/m3).1 | SO2浓度(mg/m3).1 | 烟尘浓度(mg/m3).1 | 含氧量(%).1 | 温度(℃).1 | 烟气湿度(%).1 | 烟气压力(千帕).1 | 烟气流速(m/s).1 | 状态.1 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 2022-01-01 00:00:00 | 国电电力邯郸东郊热电有限责任公司 | 1号机组排口DA002(DCS) | 930582.0 | 13.379 | 13.158 | 3.438 | 6.435 | 48.604 | 14.695 | ... | 1111474.8 | 18.171 | 18.171 | 0.476 | 7.065 | 48.307 | 13.253 | -0.012 | 13.693 | 停运 |
1 | 2022-01-01 01:00:00 | 国电电力邯郸东郊热电有限责任公司 | 1号机组排口DA002(DCS) | 891316.8 | 19.312 | 17.951 | 2.798 | 7.164 | 47.819 | 14.156 | ... | 1103194.8 | 20.524 | 22.773 | 0.479 | 7.130 | 48.887 | 13.734 | -0.021 | 13.691 | 停运 |
2 rows × 27 columns
In [28]:
hddj_emiss_data_1 = hddj_emiss_data[['时间', '流量 (m3/h)', 'NOx浓度(mg/m3)', 'SO2浓度(mg/m3)', '烟尘浓度(mg/m3)', '含氧量(%)', '温度(℃)', '烟气湿度(%)', '烟气压力(千帕)', '烟气流速(m/s)', '状态', ]].copy() hddj_emiss_data_2 = hddj_emiss_data[['时间.1', '流量 (m3/h).1', 'NOx浓度(mg/m3).1', 'SO2浓度(mg/m3).1', '烟尘浓度(mg/m3).1', '含氧量(%).1', '温度(℃).1', '烟气湿度(%).1', '烟气压力(千帕).1', '烟气流速(m/s).1', '状态.1']].copy()
In [29]:
hddj_emiss_data_1.columns = ['date'] + hddj_emiss_data_1.columns[1:].tolist() hddj_emiss_data_2.columns = hddj_emiss_data_1.columns.tolist()
In [30]:
hddj_emiss_data_1['days'] = hddj_emiss_data_1.date.apply(lambda x: str(x).split(' ')[0]) hddj_emiss_data_2['days'] = hddj_emiss_data_2.date.apply(lambda x: str(x).split(' ')[0])
In [31]:
num_cols = hddj_emiss_data_1.columns[1:-2] hddj_emiss_daily_1 = hddj_emiss_data_1.ffill().groupby('days')[num_cols].mean() hddj_emiss_daily_1['状态'] = '正常运行' hddj_emiss_daily_1.columns = [f"机组1_{x}" for x in hddj_emiss_daily_1.columns] hddj_emiss_daily_2 = hddj_emiss_data_2.ffill().groupby('days')[num_cols].mean() hddj_emiss_daily_2['状态'] = '正常运行' hddj_emiss_daily_2.columns = [f"机组2_{x}" for x in hddj_emiss_daily_2.columns]
In [32]:
hddj_daily_data.index = hddj_daily_data.index.astype(str) hddj_daily_data['企业名称'] = "国电电力邯郸东郊热电有限责任公司"
In [33]:
hddj_save_data = pd.concat([hddj_daily_data, hddj_emiss_daily_1, hddj_emiss_daily_2], axis=1) hddj_save_data
Out[33]:
发电量_1(万千瓦时) | 供热量_1(吉焦) | 燃料消耗量_1(吨) | 发电量_2(万千瓦时) | 供热量_2(吉焦) | 燃料消耗量_2(吨) | 企业名称 | 机组1_流量 (m3/h) | 机组1_NOx浓度(mg/m3) | 机组1_SO2浓度(mg/m3) | ... | 机组2_流量 (m3/h) | 机组2_NOx浓度(mg/m3) | 机组2_SO2浓度(mg/m3) | 机组2_烟尘浓度(mg/m3) | 机组2_含氧量(%) | 机组2_温度(℃) | 机组2_烟气湿度(%) | 机组2_烟气压力(千帕) | 机组2_烟气流速(m/s) | 机组2_状态 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2022-01-01 | 494.20 | 30829 | 2861 | 536.50 | 324 | 2752 | 国电电力邯郸东郊热电有限责任公司 | 941229.60 | 18.200375 | 18.165208 | ... | 1095004.20 | 19.098625 | 16.495917 | 0.477167 | 7.384167 | 49.570583 | 14.332542 | -0.001208 | 13.711958 | 正常运行 |
2022-01-02 | 554.30 | 32122 | 2536 | 567.90 | 1008 | 3086 | 国电电力邯郸东郊热电有限责任公司 | 992216.10 | 19.536458 | 18.721167 | ... | 1113858.45 | 20.497292 | 15.455208 | 0.453042 | 6.918208 | 48.557083 | 13.511000 | -0.004167 | 13.774167 | 正常运行 |
2022-01-03 | 558.30 | 33451 | 2911 | 566.20 | 1296 | 2914 | 国电电力邯郸东郊热电有限责任公司 | 1016053.05 | 20.577917 | 16.690083 | ... | 1111516.35 | 19.519958 | 15.434792 | 0.459625 | 7.142917 | 49.184958 | 13.971208 | -0.003500 | 13.844875 | 正常运行 |
2022-01-04 | 529.70 | 33179 | 3023 | 563.50 | 1248 | 2847 | 国电电力邯郸东郊热电有限责任公司 | 979135.35 | 20.397917 | 15.546958 | ... | 1112429.55 | 17.986042 | 13.265125 | 0.464458 | 7.163542 | 49.099500 | 13.916375 | -0.008208 | 13.842125 | 正常运行 |
2022-01-05 | 563.90 | 29731 | 3191 | 609.30 | 1362 | 3014 | 国电电力邯郸东郊热电有限责任公司 | 996159.15 | 17.955417 | 14.888333 | ... | 1141153.80 | 18.756125 | 14.446000 | 0.487458 | 6.975583 | 49.745875 | 14.428917 | 0.005875 | 14.311083 | 正常运行 |
2022-01-06 | 561.00 | 32505 | 3357 | 577.20 | 1236 | 3353 | 国电电力邯郸东郊热电有限责任公司 | 970119.15 | 20.292250 | 13.671917 | ... | 1112256.75 | 17.648125 | 9.985417 | 0.552083 | 7.258000 | 50.724417 | 15.268208 | -0.000167 | 14.131583 | 正常运行 |
2022-01-07 | 570.00 | 33189 | 3231 | 579.00 | 1035 | 3252 | 国电电力邯郸东郊热电有限责任公司 | 998681.85 | 18.996333 | 14.894875 | ... | 1113637.65 | 18.144083 | 14.375125 | 0.531500 | 7.082708 | 50.259708 | 14.889875 | -0.003833 | 14.068833 | 正常运行 |
2022-01-08 | 526.80 | 31881 | 2765 | 542.90 | 1323 | 2548 | 国电电力邯郸东郊热电有限责任公司 | 974497.65 | 19.103583 | 16.130625 | ... | 1092330.60 | 17.743625 | 15.234625 | 0.502833 | 7.209167 | 49.827500 | 14.535917 | 0.001125 | 13.726083 | 正常运行 |
2022-01-09 | 517.10 | 30799 | 2574 | 538.90 | 1305 | 2394 | 国电电力邯郸东郊热电有限责任公司 | 957560.55 | 19.974542 | 13.766125 | ... | 1083863.40 | 17.620958 | 13.893542 | 0.565583 | 7.215167 | 49.601458 | 14.305000 | -0.008500 | 13.569167 | 正常运行 |
2022-01-10 | 512.80 | 29277 | 2512 | 483.40 | 1335 | 2303 | 国电电力邯郸东郊热电有限责任公司 | 956263.20 | 20.450042 | 15.530625 | ... | 1037804.40 | 17.968750 | 12.740167 | 0.514167 | 7.948000 | 49.459583 | 14.191625 | -0.030583 | 12.975792 | 正常运行 |
2022-01-11 | 521.20 | 32460 | 2757 | 536.10 | 1299 | 2819 | 国电电力邯郸东郊热电有限责任公司 | 955973.40 | 18.979875 | 14.161208 | ... | 1084317.30 | 17.114042 | 11.562042 | 0.526583 | 7.341083 | 50.172417 | 14.764958 | -0.029042 | 13.674167 | 正常运行 |
2022-01-12 | 543.32 | 33593 | 3132 | 558.85 | 1368 | 2612 | 国电电力邯郸东郊热电有限责任公司 | 987528.75 | 18.116542 | 11.636042 | ... | 1094112.45 | 17.645292 | 11.908917 | 0.523000 | 7.001083 | 49.564167 | 14.263000 | -0.015208 | 13.690458 | 正常运行 |
2022-01-13 | 512.52 | 33326 | 2950 | 527.32 | 1398 | 2820 | 国电电力邯郸东郊热电有限责任公司 | 971672.85 | 18.861125 | 13.701250 | ... | 1072833.30 | 18.238292 | 11.256125 | 0.487292 | 7.163792 | 49.767583 | 14.442958 | -0.022458 | 13.463542 | 正常运行 |
2022-01-14 | 495.42 | 31417 | 2755 | 512.83 | 1536 | 2820 | 国电电力邯郸东郊热电有限责任公司 | 956458.65 | 18.336958 | 12.812500 | ... | 1066098.60 | 17.308125 | 11.162625 | 0.478542 | 7.419292 | 49.618292 | 14.328583 | -0.026708 | 13.353708 | 正常运行 |
2022-01-15 | 500.06 | 32434 | 2834 | 517.19 | 1242 | 2986 | 国电电力邯郸东郊热电有限责任公司 | 950168.55 | 20.059333 | 12.266542 | ... | 1075279.95 | 18.627792 | 13.612458 | 0.497458 | 7.446625 | 49.474000 | 14.199875 | -0.017833 | 13.440708 | 正常运行 |
2022-01-16 | 527.93 | 31986 | 3182 | 542.34 | 1116 | 3132 | 国电电力邯郸东郊热电有限责任公司 | 973078.80 | 19.974500 | 14.186208 | ... | 1090436.85 | 16.915625 | 12.755250 | 0.442083 | 7.392500 | 49.458458 | 14.185542 | -0.014458 | 13.628750 | 正常运行 |
2022-01-17 | 496.50 | 32268 | 3121 | 513.14 | 1362 | 2912 | 国电电力邯郸东郊热电有限责任公司 | 956802.15 | 18.879083 | 13.058542 | ... | 1064488.95 | 18.095833 | 11.811625 | 0.488917 | 7.067125 | 49.127708 | 13.929958 | -0.020917 | 13.250917 | 正常运行 |
2022-01-18 | 529.31 | 31814 | 3241 | 544.11 | 1305 | 3070 | 国电电力邯郸东郊热电有限责任公司 | 991453.20 | 20.236625 | 15.996250 | ... | 1092306.45 | 18.965000 | 14.870083 | 0.492542 | 7.034500 | 49.347542 | 14.144208 | -0.004125 | 13.642042 | 正常运行 |
2022-01-19 | 552.01 | 30414 | 3274 | 565.96 | 1161 | 3297 | 国电电力邯郸东郊热电有限责任公司 | 991811.85 | 20.144542 | 14.782958 | ... | 1087070.70 | 19.335167 | 14.736000 | 0.494667 | 7.120333 | 50.075542 | 14.787958 | -0.029292 | 13.718750 | 正常运行 |
2022-01-20 | 544.00 | 32416 | 3594 | 581.34 | 1329 | 3359 | 国电电力邯郸东郊热电有限责任公司 | 1005389.55 | 19.532208 | 15.500333 | ... | 1113286.95 | 18.942125 | 15.420750 | 0.440667 | 7.128083 | 49.868583 | 14.510042 | -0.025833 | 13.986250 | 正常运行 |
2022-01-21 | 561.29 | 34300 | 3891 | 617.18 | 1383 | 4019 | 国电电力邯郸东郊热电有限责任公司 | 1028425.05 | 19.846833 | 15.057042 | ... | 1150941.60 | 18.483375 | 13.172750 | 0.490542 | 6.855500 | 50.414417 | 14.936792 | -0.005083 | 14.560750 | 正常运行 |
2022-01-22 | 574.00 | 38342 | 4276 | 585.25 | 1368 | 3923 | 国电电力邯郸东郊热电有限责任公司 | 1030724.40 | 20.398667 | 15.060083 | ... | 1115300.25 | 18.465542 | 14.323500 | 0.540750 | 6.913500 | 50.396083 | 15.098875 | -0.022167 | 14.133250 | 正常运行 |
2022-01-23 | 534.94 | 37444 | 3767 | 550.24 | 1242 | 3743 | 国电电力邯郸东郊热电有限责任公司 | 685315.05 | 20.195708 | 13.737458 | ... | 1102247.70 | 18.294292 | 13.573833 | 0.561625 | 7.263125 | 49.926292 | 14.761500 | -0.027958 | 13.891958 | 正常运行 |
2022-01-24 | 543.91 | 34539 | 3175 | 550.61 | 1362 | 3852 | 国电电力邯郸东郊热电有限责任公司 | 747819.00 | 19.783167 | 13.516667 | ... | 1098705.00 | 17.310875 | 14.138333 | 0.523708 | 7.422375 | 49.522792 | 14.277750 | -0.015417 | 13.751458 | 正常运行 |
2022-01-25 | 538.31 | 36753 | 3860 | 551.21 | 1131 | 3621 | 国电电力邯郸东郊热电有限责任公司 | 981332.25 | 20.899917 | 17.045250 | ... | 1110458.10 | 17.740417 | 15.157083 | 0.548583 | 7.225333 | 49.643167 | 14.441208 | -0.008750 | 13.930542 | 正常运行 |
2022-01-26 | 529.59 | 34148 | 3749 | 545.59 | 891 | 3735 | 国电电力邯郸东郊热电有限责任公司 | 973191.45 | 19.605917 | 15.363083 | ... | 1098819.75 | 18.230167 | 13.962875 | 0.529250 | 7.353625 | 49.324125 | 14.133625 | -0.019167 | 13.717375 | 正常运行 |
2022-01-27 | 525.88 | 33630 | 3725 | 537.33 | 777 | 3446 | 国电电力邯郸东郊热电有限责任公司 | 976386.90 | 21.139042 | 16.053542 | ... | 1079510.70 | 17.716750 | 14.416917 | 0.446208 | 7.150917 | 49.165083 | 13.993833 | -0.019167 | 13.451958 | 正常运行 |
2022-01-28 | 545.06 | 34181 | 3866 | 554.88 | 558 | 3721 | 国电电力邯郸东郊热电有限责任公司 | 995228.10 | 20.381167 | 17.793375 | ... | 1093401.60 | 18.939708 | 16.025875 | 0.442833 | 6.876500 | 49.420125 | 14.186417 | -0.007375 | 13.664208 | 正常运行 |
2022-01-29 | 522.68 | 30637 | 3395 | 544.47 | 399 | 3142 | 国电电力邯郸东郊热电有限责任公司 | 967837.80 | 20.602667 | 15.591625 | ... | 1083312.90 | 19.393750 | 15.589125 | 0.495917 | 7.114250 | 49.561625 | 14.288167 | -0.012125 | 13.557125 | 正常运行 |
2022-01-30 | 509.69 | 34254 | 3101 | 526.92 | 258 | 2820 | 国电电力邯郸东郊热电有限责任公司 | 959857.95 | 22.424542 | 21.170125 | ... | 1077400.95 | 20.856208 | 19.920417 | 0.505208 | 7.135000 | 49.392292 | 14.165333 | -0.019083 | 13.457583 | 正常运行 |
2022-01-31 | 516.51 | 32145 | 2985 | 528.13 | 210 | 2966 | 国电电力邯郸东郊热电有限责任公司 | 982636.80 | 22.933250 | 18.113667 | ... | 1081850.55 | 20.094917 | 18.052333 | 0.477458 | 7.262000 | 48.929000 | 13.787333 | -0.011708 | 13.436125 | 正常运行 |
2022-02-01 | 500.46 | 25687 | 2662 | 543.60 | 207 | 2895 | 国电电力邯郸东郊热电有限责任公司 | 958825.35 | 18.983458 | 16.199000 | ... | 1089026.85 | 20.805875 | 17.409333 | 0.419625 | 6.965333 | 48.865042 | 13.722667 | -0.020083 | 13.511750 | 正常运行 |
2022-02-02 | 477.03 | 29061 | 2821 | 534.40 | 186 | 2930 | 国电电力邯郸东郊热电有限责任公司 | 935412.75 | 19.692250 | 15.898208 | ... | 1089972.75 | 19.052292 | 15.773458 | 0.413333 | 7.029000 | 49.367125 | 14.131875 | -0.013042 | 13.611125 | 正常运行 |
2022-02-03 | 439.93 | 29598 | 2779 | 494.86 | 204 | 2937 | 国电电力邯郸东郊热电有限责任公司 | 908839.35 | 20.232167 | 14.801333 | ... | 1060159.80 | 19.806708 | 15.555333 | 0.420792 | 7.337792 | 48.929583 | 13.783458 | -0.020375 | 13.166667 | 正常运行 |
2022-02-04 | 452.76 | 28709 | 2523 | 493.99 | 282 | 2867 | 国电电力邯郸东郊热电有限责任公司 | 911025.60 | 18.351792 | 14.603708 | ... | 1059162.90 | 17.241125 | 14.201500 | 0.426000 | 7.606125 | 48.940875 | 13.776375 | -0.031458 | 13.159875 | 正常运行 |
2022-02-05 | 508.35 | 30133 | 2884 | 521.49 | 285 | 2916 | 国电电力邯郸东郊热电有限责任公司 | 920823.45 | 19.440333 | 14.161000 | ... | 1084824.90 | 17.398917 | 13.958750 | 0.417125 | 7.327083 | 49.117375 | 13.928458 | -0.020042 | 13.502917 | 正常运行 |
2022-02-06 | 485.41 | 27635 | 2902 | 503.13 | 363 | 2947 | 国电电力邯郸东郊热电有限责任公司 | 916121.70 | 18.340417 | 14.278167 | ... | 1059457.95 | 15.366292 | 14.157000 | 0.412875 | 7.405000 | 49.008958 | 13.860208 | -0.019833 | 13.172083 | 正常运行 |
2022-02-07 | 469.75 | 28259 | 2939 | 484.85 | 363 | 2754 | 国电电力邯郸东郊热电有限责任公司 | 917169.90 | 18.995583 | 15.024875 | ... | 1046341.05 | 18.485042 | 14.790833 | 0.411958 | 7.544167 | 48.647417 | 13.576750 | -0.021792 | 12.952875 | 正常运行 |
2022-02-08 | 452.87 | 26685 | 2556 | 481.92 | 603 | 2485 | 国电电力邯郸东郊热电有限责任公司 | 886401.60 | 20.192167 | 14.818625 | ... | 1036790.55 | 18.849500 | 13.748292 | 0.409208 | 7.437333 | 48.806583 | 13.721208 | -0.025417 | 12.863625 | 正常运行 |
2022-02-09 | 470.87 | 26037 | 2691 | 488.17 | 681 | 2834 | 国电电力邯郸东郊热电有限责任公司 | 906835.80 | 19.853292 | 14.572875 | ... | 1038851.70 | 17.988792 | 14.982000 | 0.413333 | 7.305083 | 49.236333 | 14.036875 | -0.026583 | 12.952667 | 正常运行 |
2022-02-10 | 490.75 | 25530 | 2901 | 508.89 | 591 | 3172 | 国电电力邯郸东郊热电有限责任公司 | 928945.80 | 19.825792 | 15.346833 | ... | 1062997.35 | 17.954583 | 14.905292 | 0.439542 | 7.322958 | 49.126708 | 13.953417 | -0.011083 | 13.232667 | 正常运行 |
2022-02-11 | 467.50 | 24359 | 2790 | 497.45 | 735 | 2835 | 国电电力邯郸东郊热电有限责任公司 | 885137.40 | 20.022458 | 15.645167 | ... | 1059613.65 | 17.185792 | 15.418750 | 0.431875 | 7.399125 | 49.408708 | 14.210083 | -0.011542 | 13.247875 | 正常运行 |
2022-02-12 | 446.31 | 24180 | 2766 | 474.04 | 621 | 2787 | 国电电力邯郸东郊热电有限责任公司 | 878793.15 | 19.901583 | 11.658667 | ... | 1043504.40 | 18.584083 | 11.594583 | 0.440250 | 7.651625 | 49.116458 | 13.956625 | -0.018250 | 12.992667 | 正常运行 |
2022-02-13 | 466.12 | 25274 | 3054 | 491.41 | 594 | 2915 | 国电电力邯郸东郊热电有限责任公司 | 904216.50 | 19.563583 | 14.393250 | ... | 1061035.50 | 19.747500 | 14.760208 | 0.450958 | 7.574292 | 49.781083 | 14.427542 | -0.037625 | 13.313500 | 正常运行 |
2022-02-14 | 464.96 | 29338 | 2533 | 491.96 | 651 | 2555 | 国电电力邯郸东郊热电有限责任公司 | 898221.45 | 19.591208 | 16.393500 | ... | 1059337.20 | 19.648167 | 15.406917 | 0.424833 | 7.482917 | 49.330375 | 14.049500 | -0.044708 | 13.217542 | 正常运行 |
2022-02-15 | 466.40 | 27394 | 2611 | 444.04 | 474 | 2447 | 国电电力邯郸东郊热电有限责任公司 | 898496.85 | 20.304208 | 15.477375 | ... | 1021689.15 | 18.697583 | 13.850625 | 0.418458 | 7.849917 | 49.334625 | 14.077958 | -0.049333 | 12.751083 | 正常运行 |
2022-02-16 | 493.26 | 27639 | 2905 | 420.10 | 1074 | 2350 | 国电电力邯郸东郊热电有限责任公司 | 930371.55 | 19.781625 | 13.623167 | ... | 991069.20 | 16.822500 | 12.883958 | 0.418792 | 7.987792 | 49.201917 | 13.875458 | -0.062125 | 12.336333 | 正常运行 |
2022-02-17 | 495.53 | 30228 | 2894 | 469.32 | 1362 | 2623 | 国电电力邯郸东郊热电有限责任公司 | 924087.90 | 20.751667 | 16.294000 | ... | 1039439.10 | 19.709708 | 14.789000 | 0.391833 | 7.572167 | 49.359500 | 14.031000 | -0.041375 | 12.966167 | 正常运行 |
2022-02-18 | 524.59 | 28126 | 3030 | 531.28 | 1413 | 2724 | 国电电力邯郸东郊热电有限责任公司 | 943475.55 | 17.547500 | 15.684250 | ... | 1088419.20 | 17.534083 | 15.288667 | 0.413625 | 7.403667 | 49.193625 | 13.987625 | -0.024583 | 13.562792 | 正常运行 |
2022-02-19 | 466.49 | 27575 | 2470 | 497.11 | 1317 | 2409 | 国电电力邯郸东郊热电有限责任公司 | 927422.25 | 16.901125 | 14.059042 | ... | 1065218.70 | 17.390458 | 14.100208 | 0.411917 | 7.867083 | 48.750417 | 13.605208 | -0.032292 | 13.194958 | 正常运行 |
2022-02-20 | 503.46 | 27424 | 2799 | 460.91 | 1281 | 2916 | 国电电力邯郸东郊热电有限责任公司 | 956680.50 | 17.790792 | 14.316042 | ... | 1079138.85 | 18.781292 | 14.185750 | 0.417083 | 7.481667 | 49.719708 | 14.403625 | -0.016708 | 13.532375 | 正常运行 |
2022-02-21 | 521.02 | 26965 | 3098 | 482.89 | 1317 | 2996 | 国电电力邯郸东郊热电有限责任公司 | 948743.85 | 20.735625 | 13.478583 | ... | 1083679.50 | 19.196333 | 13.091000 | 0.420542 | 7.096250 | 49.336583 | 14.083542 | -0.014750 | 13.520000 | 正常运行 |
2022-02-22 | 528.08 | 26886 | 3317 | 490.45 | 1314 | 3209 | 国电电力邯郸东郊热电有限责任公司 | 960633.00 | 20.336125 | 17.093583 | ... | 1082105.40 | 19.493083 | 15.314375 | 0.407500 | 7.471250 | 49.393917 | 14.153542 | -0.018667 | 13.514750 | 正常运行 |
2022-02-23 | 533.95 | 25022 | 3174 | 494.54 | 1407 | 2868 | 国电电力邯郸东郊热电有限责任公司 | 962487.30 | 14.817583 | 12.260375 | ... | 1071494.25 | 16.403542 | 11.103458 | 0.416125 | 7.264125 | 49.460667 | 14.195833 | -0.019167 | 13.393625 | 正常运行 |
2022-02-24 | 505.76 | 26727 | 3079 | 527.43 | 1200 | 2921 | 国电电力邯郸东郊热电有限责任公司 | 923360.40 | 12.179875 | 8.796875 | ... | 1059437.85 | 14.083875 | 6.978250 | 0.421917 | 7.268875 | 49.327667 | 14.195417 | -0.010125 | 13.237458 | 正常运行 |
2022-02-25 | 445.43 | 21930 | 2580 | 473.06 | 1368 | 2584 | 国电电力邯郸东郊热电有限责任公司 | 860085.15 | 10.475958 | 6.187042 | ... | 1024307.10 | 12.822500 | 7.001375 | 0.403125 | 7.359417 | 48.764042 | 13.771625 | -0.005583 | 12.710292 | 正常运行 |
2022-02-26 | 491.01 | 16645 | 2733 | 509.18 | 1341 | 2545 | 国电电力邯郸东郊热电有限责任公司 | 902073.30 | 16.492917 | 9.615208 | ... | 1037322.30 | 16.268375 | 8.824500 | 0.417542 | 7.432958 | 48.933458 | 13.873167 | 0.002500 | 12.894500 | 正常运行 |
2022-02-27 | 465.33 | 17884 | 2862 | 500.18 | 1269 | 2825 | 国电电力邯郸东郊热电有限责任公司 | 873491.25 | 19.575875 | 18.428667 | ... | 1035227.55 | 19.332083 | 17.331167 | 0.350625 | 7.471875 | 48.993042 | 13.949583 | 0.000250 | 12.880750 | 正常运行 |
2022-02-28 | 487.21 | 15457 | 3029 | 497.76 | 1236 | 2632 | 国电电力邯郸东郊热电有限责任公司 | 873223.80 | 19.886042 | 17.970458 | ... | 1027222.05 | 19.495750 | 18.255167 | 0.358292 | 7.451500 | 49.359958 | 14.249000 | 0.008292 | 12.840625 | 正常运行 |
59 rows × 27 columns
In [34]:
jtzh_daily = pd.read_excel('data/机器学习样表_单位换算.xlsx', sheet_name=7) jtzh_daily.columns
Out[34]:
Index(['企业名称', 'address_reg', 'address1', '经度', '纬度', '机组数量', '单机容量(MW)', '生产设备类型', '锅炉额定蒸发量 t/h ', '汽轮机类型', '压力参数', '冷却方式', '脱硝工艺', '脱硫工艺', '除尘工艺', '燃料类型', '低位发热量(GJ/t)', 'Unnamed: 17', '日期', '机组编号', '投产日期', '产灰量(吨)', '产石膏量(吨)', '脱硝设施耗电量(千瓦时)', '运行时间(小时)', '除尘设施运行时间(小时)', '除尘耗电量(千瓦时)', '发电量(万千瓦时)', '供热量(万吉焦)', '产渣量', '脱硫剂使用量(吨)', '脱硫耗电量(千瓦时)', '脱硫设施运行时间(小时)', '脱硝还原剂消耗量(吨)', '脱硝运行时间(小时)', '燃料消耗量(吨)', 'Unnamed: 36', '日期.1', '机组编号.1', '投产日期.1', '产灰量(吨).1', '产石膏量(吨).1', '脱硝设施耗电量(千瓦时).1', '运行时间(小时).1', '除尘设施运行时间(小时).1', '除尘耗电量(千瓦时).1', '发电量(万千瓦时).1', '供热量(万吉焦).1', '产渣量.1', '脱硫剂使用量(吨).1', '脱硫耗电量(千瓦时).1', '脱硫设施运行时间(小时).1', '脱硝还原剂消耗量(吨).1', '脱硝运行时间(小时).1', '燃料消耗量(吨).1'], dtype='object')
In [35]:
jtzh_daily_1 = jtzh_daily[['日期', '发电量(万千瓦时)', '供热量(万吉焦)', '燃料消耗量(吨)']].copy() jtzh_daily_1.columns = ['days', "发电量_1(万千瓦时)", '供热量_1(吉焦)', '燃料消耗量_1(吨)'] jtzh_daily_2 = jtzh_daily[['日期.1', '发电量(万千瓦时).1', '供热量(万吉焦).1', '燃料消耗量(吨).1']].copy() jtzh_daily_2.columns = ['days', "发电量_2(万千瓦时)", '供热量_2(吉焦)', '燃料消耗量_2(吨)']
In [36]:
jtzh_daily_2
Out[36]:
days | 发电量_2(万千瓦时) | 供热量_2(吉焦) | 燃料消耗量_2(吨) | |
---|---|---|---|---|
0 | 2022-05-01 | 0.000 | 0 | 0 |
1 | 2022-05-02 | 0.000 | 0 | 0 |
2 | 2022-05-03 | 0.000 | 0 | 0 |
3 | 2022-05-04 | 0.000 | 0 | 0 |
4 | 2022-05-05 | 0.000 | 0 | 0 |
5 | 2022-05-06 | 0.000 | 0 | 0 |
6 | 2022-05-07 | 0.000 | 0 | 426 |
7 | 2022-05-08 | 218.196 | 0 | 1873 |
8 | 2022-05-09 | 444.756 | 0 | 2350 |
9 | 2022-05-10 | 552.114 | 0 | 2636 |
10 | 2022-05-11 | 481.542 | 0 | 2432 |
11 | 2022-05-12 | 439.788 | 0 | 2099 |
12 | 2022-05-13 | 495.702 | 0 | 2340 |
13 | 2022-05-14 | 486.624 | 0 | 2737 |
14 | 2022-05-15 | 460.524 | 0 | 2461 |
15 | 2022-05-16 | 505.578 | 0 | 2615 |
16 | 2022-05-17 | 432.450 | 0 | 2593 |
17 | 2022-05-18 | 509.586 | 0 | 2871 |
18 | 2022-05-19 | 514.404 | 0 | 2637 |
19 | 2022-05-20 | 514.434 | 0 | 2682 |
20 | 2022-05-21 | 520.626 | 0 | 2581 |
21 | 2022-05-22 | 500.040 | 0 | 2632 |
22 | 2022-05-23 | 584.886 | 0 | 3187 |
23 | 2022-05-24 | 514.488 | 0 | 2719 |
24 | 2022-05-25 | 486.474 | 0 | 2599 |
25 | 2022-05-26 | 501.366 | 0 | 2794 |
26 | 2022-05-27 | 467.106 | 0 | 2401 |
27 | 2022-05-28 | 504.900 | 0 | 2611 |
28 | 2022-05-29 | 462.822 | 0 | 2846 |
29 | 2022-05-30 | 528.960 | 0 | 2981 |
30 | 2022-05-31 | 672.180 | 0 | 3560 |
In [37]:
min_start = min(jtzh_daily_1.days.min(), jtzh_daily_2.days.min()) max_end = max(jtzh_daily_1.days.max(), jtzh_daily_2.days.max()) date_range = pd.date_range(min_start, max_end, freq='D') date_range
Out[37]:
DatetimeIndex(['2022-05-01', '2022-05-02', '2022-05-03', '2022-05-04', '2022-05-05', '2022-05-06', '2022-05-07', '2022-05-08', '2022-05-09', '2022-05-10', '2022-05-11', '2022-05-12', '2022-05-13', '2022-05-14', '2022-05-15', '2022-05-16', '2022-05-17', '2022-05-18', '2022-05-19', '2022-05-20', '2022-05-21', '2022-05-22', '2022-05-23', '2022-05-24', '2022-05-25', '2022-05-26', '2022-05-27', '2022-05-28', '2022-05-29', '2022-05-30', '2022-05-31'], dtype='datetime64[ns]', freq='D')
In [38]:
jtzh_daily_1 = jtzh_daily_1.set_index('days').reindex(date_range.astype(str)).fillna(0) jtzh_daily_2 = jtzh_daily_2.set_index('days').reindex(date_range.astype(str)).fillna(0)
In [39]:
jtzh_daily_data = pd.concat([jtzh_daily_1, jtzh_daily_2], axis=1) jtzh_daily_data
Out[39]:
发电量_1(万千瓦时) | 供热量_1(吉焦) | 燃料消耗量_1(吨) | 发电量_2(万千瓦时) | 供热量_2(吉焦) | 燃料消耗量_2(吨) | |
---|---|---|---|---|---|---|
2022-05-01 | 444.630 | 0 | 1889 | 0.000 | 0 | 0 |
2022-05-02 | 516.594 | 0 | 2622 | 0.000 | 0 | 0 |
2022-05-03 | 410.316 | 0 | 2233 | 0.000 | 0 | 0 |
2022-05-04 | 421.908 | 0 | 2203 | 0.000 | 0 | 0 |
2022-05-05 | 486.318 | 0 | 2524 | 0.000 | 0 | 0 |
2022-05-06 | 457.542 | 0 | 2343 | 0.000 | 0 | 0 |
2022-05-07 | 451.140 | 0 | 2278 | 0.000 | 0 | 426 |
2022-05-08 | 484.986 | 0 | 1120 | 218.196 | 0 | 1873 |
2022-05-09 | 0.000 | 0 | 0 | 444.756 | 0 | 2350 |
2022-05-10 | 0.000 | 0 | 0 | 552.114 | 0 | 2636 |
2022-05-11 | 0.000 | 0 | 0 | 481.542 | 0 | 2432 |
2022-05-12 | 0.000 | 0 | 0 | 439.788 | 0 | 2099 |
2022-05-13 | 0.000 | 0 | 0 | 495.702 | 0 | 2340 |
2022-05-14 | 0.000 | 0 | 121 | 486.624 | 0 | 2737 |
2022-05-15 | 159.936 | 0 | 2251 | 460.524 | 0 | 2461 |
2022-05-16 | 516.192 | 0 | 2543 | 505.578 | 0 | 2615 |
2022-05-17 | 432.300 | 0 | 2432 | 432.450 | 0 | 2593 |
2022-05-18 | 508.680 | 0 | 2810 | 509.586 | 0 | 2871 |
2022-05-19 | 516.066 | 0 | 2972 | 514.404 | 0 | 2637 |
2022-05-20 | 517.356 | 0 | 2623 | 514.434 | 0 | 2682 |
2022-05-21 | 521.454 | 0 | 2759 | 520.626 | 0 | 2581 |
2022-05-22 | 504.798 | 0 | 2545 | 500.040 | 0 | 2632 |
2022-05-23 | 587.400 | 0 | 3294 | 584.886 | 0 | 3187 |
2022-05-24 | 515.964 | 0 | 2633 | 514.488 | 0 | 2719 |
2022-05-25 | 485.346 | 0 | 2694 | 486.474 | 0 | 2599 |
2022-05-26 | 503.502 | 0 | 2619 | 501.366 | 0 | 2794 |
2022-05-27 | 470.340 | 0 | 2510 | 467.106 | 0 | 2401 |
2022-05-28 | 508.644 | 0 | 2753 | 504.900 | 0 | 2611 |
2022-05-29 | 460.536 | 0 | 1163 | 462.822 | 0 | 2846 |
2022-05-30 | 8.610 | 0 | 0 | 528.960 | 0 | 2981 |
2022-05-31 | 0.000 | 0 | 0 | 672.180 | 0 | 3560 |
In [40]:
jtzh_emiss_data = pd.read_excel('data/机器学习样表_单位换算.xlsx', sheet_name=6) jtzh_emiss_data.columns
Out[40]:
Index(['时间', '企业名称', '监测点', '流量 (m3/h)', 'NOx浓度(mg/m3)', 'SO2浓度(mg/m3)', '烟尘浓度(mg/m3)', '含氧量(%)', '烟气湿度(%)', '温度(℃)', '烟气流速(m/s)', '状态', 'Unnamed: 12', '时间.1', '企业名称.1', '监测点.1', '流量 (m3/h).1', 'NOx浓度(mg/m3).1', 'SO2浓度(mg/m3).1', '烟尘浓度(mg/m3).1', '含氧量(%).1', '烟气湿度(%).1', '温度(℃).1', '烟气流速(m/s).1', '状态.1'], dtype='object')
In [41]:
jtzh_emiss_data_1 = jtzh_emiss_data[['时间', '流量 (m3/h)', 'NOx浓度(mg/m3)', 'SO2浓度(mg/m3)', '烟尘浓度(mg/m3)', '含氧量(%)', '温度(℃)', '烟气湿度(%)', '烟气流速(m/s)', '状态', ]].copy() jtzh_emiss_data_2 = jtzh_emiss_data[['时间.1', '流量 (m3/h).1', 'NOx浓度(mg/m3).1', 'SO2浓度(mg/m3).1', '烟尘浓度(mg/m3).1', '含氧量(%).1', '温度(℃).1', '烟气湿度(%).1', '烟气流速(m/s).1', '状态.1']].copy()
In [42]:
jtzh_emiss_data_1.columns = ['date'] + jtzh_emiss_data_1.columns[1:].tolist() jtzh_emiss_data_2.columns = jtzh_emiss_data_1.columns.tolist()
In [43]:
jtzh_emiss_data_1['days'] = jtzh_emiss_data_1.date.apply(lambda x: str(x).split(' ')[0]) jtzh_emiss_data_2['days'] = jtzh_emiss_data_2.date.apply(lambda x: str(x).split(' ')[0])
In [44]:
jtzh_emiss_data_1
Out[44]:
date | 流量 (m3/h) | NOx浓度(mg/m3) | SO2浓度(mg/m3) | 烟尘浓度(mg/m3) | 含氧量(%) | 温度(℃) | 烟气湿度(%) | 烟气流速(m/s) | 状态 | days | |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | 2022-05-01 00:00:00 | 705600 | 9.79 | 11.48 | 1.89 | 8.2 | 51.5 | 8.8 | 8.61 | 正常运行 | 2022-05-01 |
1 | 2022-05-01 01:00:00 | 716760 | 14.68 | 14.25 | 1.87 | 8.3 | 52.4 | 9.5 | 8.83 | 正常运行 | 2022-05-01 |
2 | 2022-05-01 02:00:00 | 685080 | 12.44 | 11.01 | 1.92 | 8.6 | 51.9 | 9.4 | 8.43 | 正常运行 | 2022-05-01 |
3 | 2022-05-01 03:00:00 | 687960 | 16.18 | 12.24 | 1.91 | 8.6 | 51.5 | 9.4 | 8.46 | 正常运行 | 2022-05-01 |
4 | 2022-05-01 04:00:00 | 691920 | 19.52 | 12.77 | 1.86 | 8.8 | 51.2 | 9.2 | 8.47 | 正常运行 | 2022-05-01 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
739 | 2022-05-31 19:00:00 | 56520 | -0.13 | 0.06 | 0.68 | 19.8 | 29.8 | 0.8 | 0.59 | 停运 | 2022-05-31 |
740 | 2022-05-31 20:00:00 | 49680 | -0.14 | 0.08 | 0.67 | 20.0 | 29.4 | 0.7 | 0.52 | 停运 | 2022-05-31 |
741 | 2022-05-31 21:00:00 | 47160 | -0.15 | 0.07 | 0.68 | 20.0 | 28.9 | 0.5 | 0.49 | 停运 | 2022-05-31 |
742 | 2022-05-31 22:00:00 | 44280 | -0.15 | 0.03 | 0.67 | 20.0 | 28.4 | 0.4 | 0.46 | 停运 | 2022-05-31 |
743 | 2022-05-31 23:00:00 | 38880 | -0.15 | 0.01 | 0.66 | 20.0 | 27.9 | 0.2 | 0.40 | 停运 | 2022-05-31 |
744 rows × 11 columns
In [45]:
num_cols = jtzh_emiss_data_1.columns[1:-2] jtzh_emiss_daily_1 = jtzh_emiss_data_1.ffill().groupby('days')[num_cols].mean() jtzh_emiss_daily_1['状态'] = jtzh_emiss_data_1.ffill().groupby('days')['状态'].apply(lambda x: x.value_counts().index[0]) jtzh_emiss_daily_1.columns = [f"机组1_{x}" for x in jtzh_emiss_daily_1.columns] jtzh_emiss_daily_2 = jtzh_emiss_data_2.ffill().groupby('days')[num_cols].mean() jtzh_emiss_daily_2['状态'] = jtzh_emiss_data_1.ffill().groupby('days')['状态'].apply(lambda x: x.value_counts().index[0]) jtzh_emiss_daily_2.columns = [f"机组2_{x}" for x in jtzh_emiss_daily_2.columns]
In [50]:
jtzh_emiss_daily_1
Out[50]:
机组1_流量 (m3/h) | 机组1_NOx浓度(mg/m3) | 机组1_SO2浓度(mg/m3) | 机组1_烟尘浓度(mg/m3) | 机组1_含氧量(%) | 机组1_温度(℃) | 机组1_烟气湿度(%) | 机组1_烟气流速(m/s) | 机组1_状态 | |
---|---|---|---|---|---|---|---|---|---|
days | |||||||||
2022-05-01 | 820965.0 | 12.952083 | 12.856250 | 1.787500 | 7.795833 | 52.320833 | 9.204167 | 10.088750 | 正常运行 |
2022-05-02 | 907380.0 | 14.641667 | 11.846250 | 1.717917 | 7.295833 | 53.145833 | 9.016667 | 11.147917 | 正常运行 |
2022-05-03 | 771360.0 | 14.414167 | 12.434167 | 1.850833 | 7.650000 | 51.841667 | 8.750000 | 9.415417 | 正常运行 |
2022-05-04 | 780390.0 | 14.922500 | 12.910417 | 1.922083 | 7.462500 | 51.808333 | 8.495833 | 9.496250 | 正常运行 |
2022-05-05 | 870075.0 | 14.102917 | 13.716667 | 1.981667 | 7.195833 | 52.354167 | 8.725000 | 10.636667 | 正常运行 |
2022-05-06 | 816300.0 | 14.321667 | 14.458750 | 1.729583 | 7.433333 | 51.462500 | 8.858333 | 9.971667 | 正常运行 |
2022-05-07 | 804405.0 | 16.310833 | 13.279583 | 1.837917 | 7.333333 | 51.025000 | 8.595833 | 9.781667 | 正常运行 |
2022-05-08 | 845610.0 | 18.585417 | 13.300417 | 1.906667 | 7.862500 | 51.854167 | 9.483333 | 10.417500 | 正常运行 |
2022-05-09 | 26370.0 | 6.152083 | 0.403750 | 0.651250 | 19.887500 | 34.925000 | 2.458333 | 0.285000 | 停运 |
2022-05-10 | 269970.0 | -0.208333 | 0.264583 | 1.107500 | 19.912500 | 32.612500 | 0.000000 | 2.819583 | 停运 |
2022-05-11 | 163470.0 | -0.147917 | 0.288333 | 1.262083 | 20.100000 | 22.850000 | 0.000000 | 1.665833 | 停运 |
2022-05-12 | 27720.0 | -0.182083 | 0.225417 | 0.636667 | 20.216667 | 19.625000 | 0.000000 | 0.277917 | 停运 |
2022-05-13 | 50760.0 | -0.140833 | 0.102917 | 0.629583 | 20.270833 | 18.637500 | 0.000000 | 0.507083 | 停运 |
2022-05-14 | 48540.0 | -0.112500 | 0.052083 | 0.626667 | 20.237500 | 21.245833 | 0.345833 | 0.490417 | 停运 |
2022-05-15 | 602865.0 | 85.984583 | 6.295833 | 1.590833 | 13.391667 | 39.200000 | 4.379167 | 6.872500 | 停运 |
2022-05-16 | 912705.0 | 14.561250 | 13.784583 | 1.407500 | 7.279167 | 53.104167 | 9.058333 | 11.232917 | 正常运行 |
2022-05-17 | 816165.0 | 13.918333 | 12.802083 | 1.493333 | 7.700000 | 53.766667 | 9.658333 | 10.111250 | 正常运行 |
2022-05-18 | 892620.0 | 14.547083 | 13.451250 | 1.721667 | 7.141667 | 52.816667 | 8.712500 | 10.920833 | 正常运行 |
2022-05-19 | 904860.0 | 15.437083 | 13.886250 | 1.705833 | 7.012500 | 52.487500 | 7.966667 | 10.968333 | 正常运行 |
2022-05-20 | 906690.0 | 13.552917 | 13.295000 | 1.815417 | 7.041667 | 53.208333 | 8.454167 | 11.080417 | 正常运行 |
2022-05-21 | 931575.0 | 16.459583 | 11.678333 | 1.968750 | 7.241667 | 53.270833 | 7.487500 | 11.228333 | 正常运行 |
2022-05-22 | 891885.0 | 15.156250 | 13.014167 | 1.800000 | 7.120833 | 52.929167 | 8.608333 | 10.908750 | 正常运行 |
2022-05-23 | 1000560.0 | 14.451667 | 13.710833 | 2.156667 | 6.716667 | 53.529167 | 8.504167 | 12.238333 | 正常运行 |
2022-05-24 | 921300.0 | 13.775000 | 12.157083 | 2.155833 | 7.191667 | 53.195833 | 8.562500 | 11.273333 | 正常运行 |
2022-05-25 | 867765.0 | 15.344167 | 12.987083 | 1.666250 | 7.337500 | 52.162500 | 8.283333 | 10.549167 | 正常运行 |
2022-05-26 | 902100.0 | 14.439167 | 13.062917 | 1.760833 | 7.245833 | 52.087500 | 8.283333 | 10.967083 | 正常运行 |
2022-05-27 | 865320.0 | 14.760000 | 12.725417 | 1.699167 | 7.358333 | 52.287500 | 8.270833 | 10.518750 | 正常运行 |
2022-05-28 | 925965.0 | 15.012917 | 14.615833 | 1.708750 | 7.170833 | 53.245833 | 8.679167 | 11.337917 | 正常运行 |
2022-05-29 | 861255.0 | 14.035000 | 12.818750 | 1.580000 | 7.470833 | 53.304167 | 8.891667 | 10.572083 | 正常运行 |
2022-05-30 | 71640.0 | 0.266667 | 0.770417 | 0.662500 | 19.554167 | 39.675000 | 3.845833 | 0.811667 | 停运 |
2022-05-31 | 53550.0 | -0.043333 | 0.085417 | 0.663750 | 19.941667 | 28.033333 | 0.454167 | 0.556667 | 停运 |
In [47]:
jtzh_daily_data['企业名称'] = "建投遵化热电有限责任公司" jtzh_save_data = pd.concat([jtzh_daily_data, jtzh_emiss_daily_1, jtzh_emiss_daily_2], axis=1)
In [48]:
jtzh_save_data
Out[48]:
发电量_1(万千瓦时) | 供热量_1(吉焦) | 燃料消耗量_1(吨) | 发电量_2(万千瓦时) | 供热量_2(吉焦) | 燃料消耗量_2(吨) | 企业名称 | 机组1_流量 (m3/h) | 机组1_NOx浓度(mg/m3) | 机组1_SO2浓度(mg/m3) | ... | 机组1_状态 | 机组2_流量 (m3/h) | 机组2_NOx浓度(mg/m3) | 机组2_SO2浓度(mg/m3) | 机组2_烟尘浓度(mg/m3) | 机组2_含氧量(%) | 机组2_温度(℃) | 机组2_烟气湿度(%) | 机组2_烟气流速(m/s) | 机组2_状态 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2022-05-01 | 444.630 | 0 | 1889 | 0.000 | 0 | 0 | 建投遵化热电有限责任公司 | 820965.0 | 12.952083 | 12.856250 | ... | 正常运行 | 64290.0 | 0.169583 | -1.430417 | 0.210833 | 20.512500 | 13.150000 | 0.000000 | 0.630417 | 正常运行 |
2022-05-02 | 516.594 | 0 | 2622 | 0.000 | 0 | 0 | 建投遵化热电有限责任公司 | 907380.0 | 14.641667 | 11.846250 | ... | 正常运行 | 71235.0 | 0.143333 | -1.401250 | 0.211667 | 20.416667 | 15.525000 | 0.000000 | 0.704583 | 正常运行 |
2022-05-03 | 410.316 | 0 | 2233 | 0.000 | 0 | 0 | 建投遵化热电有限责任公司 | 771360.0 | 14.414167 | 12.434167 | ... | 正常运行 | 71370.0 | 1.227500 | -1.264167 | 0.218333 | 19.479167 | 22.129167 | 0.200000 | 0.722917 | 正常运行 |
2022-05-04 | 421.908 | 0 | 2203 | 0.000 | 0 | 0 | 建投遵化热电有限责任公司 | 780390.0 | 14.922500 | 12.910417 | ... | 正常运行 | 73785.0 | 0.134583 | -1.037500 | 0.214167 | 20.095833 | 26.258333 | 0.016667 | 0.757500 | 正常运行 |
2022-05-05 | 486.318 | 0 | 2524 | 0.000 | 0 | 0 | 建投遵化热电有限责任公司 | 870075.0 | 14.102917 | 13.716667 | ... | 正常运行 | 73605.0 | 0.075417 | -0.920417 | 0.212083 | 20.150000 | 23.062500 | 0.212500 | 0.750000 | 正常运行 |
2022-05-06 | 457.542 | 0 | 2343 | 0.000 | 0 | 0 | 建投遵化热电有限责任公司 | 816300.0 | 14.321667 | 14.458750 | ... | 正常运行 | 59610.0 | 0.082083 | -0.922083 | 0.210833 | 20.308333 | 15.370833 | 0.000000 | 0.590417 | 正常运行 |
2022-05-07 | 451.140 | 0 | 2278 | 0.000 | 0 | 426 | 建投遵化热电有限责任公司 | 804405.0 | 16.310833 | 13.279583 | ... | 正常运行 | 128505.0 | 16.567917 | -0.578333 | 0.481667 | 19.883333 | 17.375000 | 0.104167 | 1.297083 | 正常运行 |
2022-05-08 | 484.986 | 0 | 1120 | 218.196 | 0 | 1873 | 建投遵化热电有限责任公司 | 845610.0 | 18.585417 | 13.300417 | ... | 正常运行 | 676485.0 | 135.337500 | 7.194583 | 1.159583 | 10.775000 | 35.941667 | 6.804167 | 7.757917 | 正常运行 |
2022-05-09 | 0.000 | 0 | 0 | 444.756 | 0 | 2350 | 建投遵化热电有限责任公司 | 26370.0 | 6.152083 | 0.403750 | ... | 停运 | 768375.0 | 14.072500 | 14.240000 | 0.990417 | 7.158333 | 44.408333 | 11.366667 | 9.436250 | 停运 |
2022-05-10 | 0.000 | 0 | 0 | 552.114 | 0 | 2636 | 建投遵化热电有限责任公司 | 269970.0 | -0.208333 | 0.264583 | ... | 停运 | 892770.0 | 14.628750 | 14.722083 | 1.354167 | 6.433333 | 44.408333 | 11.441667 | 10.987083 | 停运 |
2022-05-11 | 0.000 | 0 | 0 | 481.542 | 0 | 2432 | 建投遵化热电有限责任公司 | 163470.0 | -0.147917 | 0.288333 | ... | 停运 | 806250.0 | 15.005000 | 14.337500 | 1.321250 | 6.629167 | 43.937500 | 10.600000 | 9.805833 | 停运 |
2022-05-12 | 0.000 | 0 | 0 | 439.788 | 0 | 2099 | 建投遵化热电有限责任公司 | 27720.0 | -0.182083 | 0.225417 | ... | 停运 | 757695.0 | 15.691667 | 13.880833 | 1.195833 | 6.604167 | 43.604167 | 10.866667 | 9.228333 | 停运 |
2022-05-13 | 0.000 | 0 | 0 | 495.702 | 0 | 2340 | 建投遵化热电有限责任公司 | 50760.0 | -0.140833 | 0.102917 | ... | 停运 | 823410.0 | 14.090000 | 13.739583 | 1.269583 | 6.254167 | 43.504167 | 10.720833 | 10.015833 | 停运 |
2022-05-14 | 0.000 | 0 | 121 | 486.624 | 0 | 2737 | 建投遵化热电有限责任公司 | 48540.0 | -0.112500 | 0.052083 | ... | 停运 | 816600.0 | 15.875000 | 13.857917 | 1.365833 | 6.375000 | 44.533333 | 11.595833 | 10.068750 | 停运 |
2022-05-15 | 159.936 | 0 | 2251 | 460.524 | 0 | 2461 | 建投遵化热电有限责任公司 | 602865.0 | 85.984583 | 6.295833 | ... | 停运 | 808785.0 | 14.118750 | 14.242917 | 1.252500 | 6.437500 | 44.541667 | 11.550000 | 9.954583 | 停运 |
2022-05-16 | 516.192 | 0 | 2543 | 505.578 | 0 | 2615 | 建投遵化热电有限责任公司 | 912705.0 | 14.561250 | 13.784583 | ... | 正常运行 | 861765.0 | 15.751250 | 14.907500 | 1.249583 | 6.450000 | 45.491667 | 12.154167 | 10.716250 | 正常运行 |
2022-05-17 | 432.300 | 0 | 2432 | 432.450 | 0 | 2593 | 建投遵化热电有限责任公司 | 816165.0 | 13.918333 | 12.802083 | ... | 正常运行 | 792225.0 | 13.562917 | 14.112083 | 1.308333 | 6.983333 | 46.116667 | 12.208333 | 9.870833 | 正常运行 |
2022-05-18 | 508.680 | 0 | 2810 | 509.586 | 0 | 2871 | 建投遵化热电有限责任公司 | 892620.0 | 14.547083 | 13.451250 | ... | 正常运行 | 866895.0 | 14.520417 | 13.890417 | 1.287917 | 6.391667 | 44.933333 | 11.258333 | 10.660833 | 正常运行 |
2022-05-19 | 516.066 | 0 | 2972 | 514.404 | 0 | 2637 | 建投遵化热电有限责任公司 | 904860.0 | 15.437083 | 13.886250 | ... | 正常运行 | 871455.0 | 14.498333 | 15.750417 | 1.176250 | 6.395833 | 44.466667 | 11.366667 | 10.697083 | 正常运行 |
2022-05-20 | 517.356 | 0 | 2623 | 514.434 | 0 | 2682 | 建投遵化热电有限责任公司 | 906690.0 | 13.552917 | 13.295000 | ... | 正常运行 | 862005.0 | 13.764167 | 15.565417 | 1.099583 | 6.225000 | 45.175000 | 11.695833 | 10.653333 | 正常运行 |
2022-05-21 | 521.454 | 0 | 2759 | 520.626 | 0 | 2581 | 建投遵化热电有限责任公司 | 931575.0 | 16.459583 | 11.678333 | ... | 正常运行 | 898170.0 | 15.342500 | 13.702083 | 1.205833 | 6.458333 | 45.204167 | 9.837500 | 10.888750 | 正常运行 |
2022-05-22 | 504.798 | 0 | 2545 | 500.040 | 0 | 2632 | 建投遵化热电有限责任公司 | 891885.0 | 15.156250 | 13.014167 | ... | 正常运行 | 866460.0 | 16.112083 | 14.662917 | 1.146250 | 6.337500 | 45.016667 | 10.062500 | 10.512083 | 正常运行 |
2022-05-23 | 587.400 | 0 | 3294 | 584.886 | 0 | 3187 | 建投遵化热电有限责任公司 | 1000560.0 | 14.451667 | 13.710833 | ... | 正常运行 | 974625.0 | 16.114583 | 15.273750 | 1.201667 | 5.845833 | 45.633333 | 9.937500 | 11.813750 | 正常运行 |
2022-05-24 | 515.964 | 0 | 2633 | 514.488 | 0 | 2719 | 建投遵化热电有限责任公司 | 921300.0 | 13.775000 | 12.157083 | ... | 正常运行 | 894960.0 | 14.147917 | 13.437500 | 1.277083 | 6.166667 | 45.575000 | 9.408333 | 10.788750 | 正常运行 |
2022-05-25 | 485.346 | 0 | 2694 | 486.474 | 0 | 2599 | 建投遵化热电有限责任公司 | 867765.0 | 15.344167 | 12.987083 | ... | 正常运行 | 854205.0 | 15.225417 | 14.508750 | 1.211250 | 6.295833 | 44.412500 | 8.583333 | 10.172083 | 正常运行 |
2022-05-26 | 503.502 | 0 | 2619 | 501.366 | 0 | 2794 | 建投遵化热电有限责任公司 | 902100.0 | 14.439167 | 13.062917 | ... | 正常运行 | 874425.0 | 15.542083 | 15.649583 | 1.173750 | 6.237500 | 44.458333 | 8.741667 | 10.432917 | 正常运行 |
2022-05-27 | 470.340 | 0 | 2510 | 467.106 | 0 | 2401 | 建投遵化热电有限责任公司 | 865320.0 | 14.760000 | 12.725417 | ... | 正常运行 | 836100.0 | 14.040417 | 13.172083 | 1.220417 | 6.329167 | 44.741667 | 8.937500 | 9.993750 | 正常运行 |
2022-05-28 | 508.644 | 0 | 2753 | 504.900 | 0 | 2611 | 建投遵化热电有限责任公司 | 925965.0 | 15.012917 | 14.615833 | ... | 正常运行 | 895515.0 | 15.555833 | 14.915417 | 1.305833 | 6.183333 | 45.587500 | 9.491667 | 10.801250 | 正常运行 |
2022-05-29 | 460.536 | 0 | 1163 | 462.822 | 0 | 2846 | 建投遵化热电有限责任公司 | 861255.0 | 14.035000 | 12.818750 | ... | 正常运行 | 837945.0 | 15.120833 | 13.484583 | 1.341667 | 6.425000 | 45.545833 | 9.350000 | 10.090000 | 正常运行 |
2022-05-30 | 8.610 | 0 | 0 | 528.960 | 0 | 2981 | 建投遵化热电有限责任公司 | 71640.0 | 0.266667 | 0.770417 | ... | 停运 | 915030.0 | 15.763750 | 15.673750 | 1.416667 | 6.162500 | 45.175000 | 9.208333 | 11.002083 | 停运 |
2022-05-31 | 0.000 | 0 | 0 | 672.180 | 0 | 3560 | 建投遵化热电有限责任公司 | 53550.0 | -0.043333 | 0.085417 | ... | 停运 | 992220.0 | 17.718333 | 16.058750 | 1.567083 | 5.570833 | 46.100000 | 9.641667 | 12.008333 | 停运 |
31 rows × 25 columns
In [65]:
writer = pd.ExcelWriter('data/电厂日数据.xlsx',engine='openpyxl') zjxz_save_data.to_excel(writer,"浙江秀舟") wxxs_save_data.to_excel(writer,"武乡西山") hddj_save_data.to_excel(writer,"邯郸东郊") jtzh_save_data.to_excel(writer,"建投遵化") writer.save() writer.close()
In [ ]: