{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "8950aafd-80e8-4078-874c-966efdc4b0ac", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": 3, "id": "50832980-f7e1-4a19-a5e0-b8a378ebd39b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
电厂名称机组编号铭牌容量 (MW)机组类型参数分类冷凝器型式入炉煤低位热值(kJ/kg)燃煤挥发份Var(%)燃煤灰份Aar(%)煤种所处地区longitudelatitudealtitude发电碳排放因子(kg/kWh)供热碳排放因子(kg/MJ)
0江苏利港电力有限公司1350.0纯凝式亚临界水冷21602.0500026.0916.80烟煤江苏省120.0966231.9423611.00.5869900.076843
1江苏利港电力有限公司1350.0纯凝式亚临界水冷21926.8100026.6815.41烟煤江苏省120.0966231.9423611.00.6328590.077676
2江苏利港电力有限公司1350.0纯凝式亚临界水冷21261.9306226.4615.18烟煤江苏省120.0966231.9423611.00.6091960.074823
\n", "
" ], "text/plain": [ " 电厂名称 机组编号 铭牌容量 (MW) 机组类型 参数分类 冷凝器型式 入炉煤低位热值(kJ/kg) 燃煤挥发份Var(%) \\\n", "0 江苏利港电力有限公司 1 350.0 纯凝式 亚临界 水冷 21602.05000 26.09 \n", "1 江苏利港电力有限公司 1 350.0 纯凝式 亚临界 水冷 21926.81000 26.68 \n", "2 江苏利港电力有限公司 1 350.0 纯凝式 亚临界 水冷 21261.93062 26.46 \n", "\n", " 燃煤灰份Aar(%) 煤种 所处地区 longitude latitude altitude 发电碳排放因子(kg/kWh) \\\n", "0 16.80 烟煤 江苏省 120.09662 31.942361 1.0 0.586990 \n", "1 15.41 烟煤 江苏省 120.09662 31.942361 1.0 0.632859 \n", "2 15.18 烟煤 江苏省 120.09662 31.942361 1.0 0.609196 \n", "\n", " 供热碳排放因子(kg/MJ) \n", "0 0.076843 \n", "1 0.077676 \n", "2 0.074823 " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "total_data = pd.read_csv('train_data.csv')\n", "total_data.head(3)" ] }, { "cell_type": "code", "execution_count": 23, "id": "499cac72-c6a3-4b86-8aed-6fc010b12693", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(5741, 16)" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "total_data.shape" ] }, { "cell_type": "code", "execution_count": 4, "id": "7ab5d82e-19bd-4aa4-9cd6-d2004718b00d", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
发电类型地区城市企业名称机组编号机组状态机组数量单机容量(MW)总容量(MW)核心设备类型汽轮机类型压力参数冷却方式
0煤电安徽省安庆市国能神皖安庆发电有限责任公司1在役1320.0320.0煤粉锅炉凝气式亚临界水冷-开式循环
1煤电安徽省安庆市国能神皖安庆发电有限责任公司2在役1320.0320.0煤粉锅炉凝气式亚临界水冷-开式循环
2煤电安徽省安庆市国能神皖安庆发电有限责任公司3在役11000.01000.0煤粉锅炉凝气式超超临界水冷-闭式循环
\n", "
" ], "text/plain": [ " 发电类型 地区 城市 企业名称 机组编号 机组状态 机组数量 单机容量(MW) 总容量(MW) 核心设备类型 \\\n", "0 煤电 安徽省 安庆市 国能神皖安庆发电有限责任公司 1 在役 1 320.0 320.0 煤粉锅炉 \n", "1 煤电 安徽省 安庆市 国能神皖安庆发电有限责任公司 2 在役 1 320.0 320.0 煤粉锅炉 \n", "2 煤电 安徽省 安庆市 国能神皖安庆发电有限责任公司 3 在役 1 1000.0 1000.0 煤粉锅炉 \n", "\n", " 汽轮机类型 压力参数 冷却方式 \n", "0 凝气式 亚临界 水冷-开式循环 \n", "1 凝气式 亚临界 水冷-开式循环 \n", "2 凝气式 超超临界 水冷-闭式循环 " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "unit_data = pd.read_excel('./data/煤电机组情况(含企业名称).xlsx')\n", "unit_data.head(3)" ] }, { "cell_type": "code", "execution_count": 21, "id": "c4d54203-5343-43df-b594-f6a13e6f47a1", "metadata": {}, "outputs": [], "source": [ "total_data.rename(columns={'电厂名称':'企业名称'}, inplace=True)\n", "total_data['机组编号'] = total_data['机组编号'].astype('str')\n", "unit_data['机组编号'] = unit_data['机组编号'].astype('str')" ] }, { "cell_type": "code", "execution_count": 44, "id": "757e26c3-cd1b-48a3-9668-78e13f40436f", "metadata": {}, "outputs": [], "source": [ "def change_type(x:str):\n", " if pd.isna(x):\n", " return x\n", " x = x.strip()\n", " if '纯凝' in x:\n", " return '纯凝式'\n", " if '供热' in x:\n", " return '供热式'\n", " if '煤粉' in x:\n", " return '煤粉锅炉'\n", " if x.startswith('循环流化床'):\n", " return '循环流化床锅炉'\n", " if '三废' in x:\n", " return '三废炉'\n", " if '直接空冷' in x:\n", " return '直接空冷'\n", " if '间接空冷' in x:\n", " return '间接空冷'\n", " return x" ] }, { "cell_type": "code", "execution_count": 28, "id": "fcc7c556-ae7b-4be1-9163-709ce1ca084c", "metadata": {}, "outputs": [], "source": [ "merge_data = total_data.merge(unit_data[['企业名称','机组编号','汽轮机类型', '压力参数', '冷却方式']], how='left', on=['企业名称', '机组编号'])" ] }, { "cell_type": "code", "execution_count": 32, "id": "3af6ad2f-a881-4ee6-9a27-ecbe75c97b31", "metadata": {}, "outputs": [], "source": [ "merge_data['机组类型'] = merge_data.apply(lambda x: x['机组类型'] if pd.isna(x['汽轮机类型']) else x['汽轮机类型'], axis=1)" ] }, { "cell_type": "code", "execution_count": 34, "id": "dec103bc-c868-4557-ba83-9bbb02f8e9f8", "metadata": {}, "outputs": [], "source": [ "merge_data['参数分类'] = merge_data.apply(lambda x: x['参数分类'] if pd.isna(x['压力参数']) else x['压力参数'], axis=1)" ] }, { "cell_type": "code", "execution_count": 35, "id": "454273f0-51ab-4a75-9c44-9ae8b7cc2a79", "metadata": {}, "outputs": [], "source": [ "merge_data['冷凝器型式'] = merge_data.apply(lambda x: x['冷凝器型式'] if pd.isna(x['冷却方式']) else x['冷却方式'], axis=1)" ] }, { "cell_type": "code", "execution_count": 37, "id": "d3c9cb26-63b4-4c72-9c5b-d90a2c5867ca", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "水冷-闭式循环 2143\n", "水冷 1166\n", "水冷-开式循环 1101\n", "空冷-直接空冷 492\n", "直接空冷 241\n", "空冷-间接空冷 154\n", "间接空冷 74\n", "空冷 19\n", "其他 2\n", "Name: 冷凝器型式, dtype: int64" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "merge_data['冷凝器型式'].value_counts()" ] }, { "cell_type": "code", "execution_count": 41, "id": "30b2d793-7b44-434a-96e3-c6ce15295881", "metadata": {}, "outputs": [], "source": [ "use_data = merge_data[merge_data.columns[:-3]].copy()" ] }, { "cell_type": "code", "execution_count": 45, "id": "fbdf13c0-6174-463b-9dd0-9ed736e6d126", "metadata": {}, "outputs": [], "source": [ "for col in ['机组类型', '参数分类', '冷凝器型式']:\n", " use_data[col] = use_data[col].apply(change_type)" ] }, { "cell_type": "code", "execution_count": 46, "id": "9697f501-1fef-4f24-b9d9-bece28e2c867", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
企业名称机组编号铭牌容量 (MW)机组类型参数分类冷凝器型式入炉煤低位热值(kJ/kg)燃煤挥发份Var(%)燃煤灰份Aar(%)煤种所处地区longitudelatitudealtitude发电碳排放因子(kg/kWh)供热碳排放因子(kg/MJ)
0江苏利港电力有限公司1350.0凝气式亚临界水冷-开式循环21602.0500026.0916.80烟煤江苏省120.09662031.9423611.00.5869900.076843
1江苏利港电力有限公司1350.0凝气式亚临界水冷-开式循环21926.8100026.6815.41烟煤江苏省120.09662031.9423611.00.6328590.077676
2江苏利港电力有限公司1350.0凝气式亚临界水冷-开式循环21261.9306226.4615.18烟煤江苏省120.09662031.9423611.00.6091960.074823
3江苏利港电力有限公司1350.0凝气式亚临界水冷-开式循环20840.0000026.4314.55烟煤江苏省120.09662031.9423611.00.6021780.081628
4江苏利港电力有限公司1350.0凝气式亚临界水冷-开式循环20706.0000026.4314.96烟煤江苏省120.09662031.9423611.00.5902540.081103
...................................................
5736浙江浙能电力股份有限公司台州发电厂8350.0凝气式亚临界水冷-开式循环21973.0000037.4317.12烟煤浙江省121.46584028.70462373.00.6283000.078776
5737浙江浙能电力股份有限公司台州发电厂8350.0凝气式亚临界水冷-开式循环21372.0000039.8718.01烟煤浙江省121.46584028.70462373.00.5950190.076622
5738浙江浙能电力股份有限公司台州发电厂8350.0凝气式亚临界水冷-开式循环20856.0000039.3219.74烟煤浙江省121.46584028.70462373.00.5657180.074772
5739榆能榆神热电有限公司1350.0抽凝式超临界间接空冷25514.0000038.847.28烟煤陕西省109.82026538.3043831151.00.6644560.091482
5740榆能榆神热电有限公司2350.0抽凝式超临界间接空冷25514.0000038.847.28烟煤陕西省109.82026538.3043831151.00.6617590.091483
\n", "

5741 rows × 16 columns

\n", "
" ], "text/plain": [ " 企业名称 机组编号 铭牌容量 (MW) 机组类型 参数分类 冷凝器型式 入炉煤低位热值(kJ/kg) \\\n", "0 江苏利港电力有限公司 1 350.0 凝气式 亚临界 水冷-开式循环 21602.05000 \n", "1 江苏利港电力有限公司 1 350.0 凝气式 亚临界 水冷-开式循环 21926.81000 \n", "2 江苏利港电力有限公司 1 350.0 凝气式 亚临界 水冷-开式循环 21261.93062 \n", "3 江苏利港电力有限公司 1 350.0 凝气式 亚临界 水冷-开式循环 20840.00000 \n", "4 江苏利港电力有限公司 1 350.0 凝气式 亚临界 水冷-开式循环 20706.00000 \n", "... ... ... ... ... ... ... ... \n", "5736 浙江浙能电力股份有限公司台州发电厂 8 350.0 凝气式 亚临界 水冷-开式循环 21973.00000 \n", "5737 浙江浙能电力股份有限公司台州发电厂 8 350.0 凝气式 亚临界 水冷-开式循环 21372.00000 \n", "5738 浙江浙能电力股份有限公司台州发电厂 8 350.0 凝气式 亚临界 水冷-开式循环 20856.00000 \n", "5739 榆能榆神热电有限公司 1 350.0 抽凝式 超临界 间接空冷 25514.00000 \n", "5740 榆能榆神热电有限公司 2 350.0 抽凝式 超临界 间接空冷 25514.00000 \n", "\n", " 燃煤挥发份Var(%) 燃煤灰份Aar(%) 煤种 所处地区 longitude latitude altitude \\\n", "0 26.09 16.80 烟煤 江苏省 120.096620 31.942361 1.0 \n", "1 26.68 15.41 烟煤 江苏省 120.096620 31.942361 1.0 \n", "2 26.46 15.18 烟煤 江苏省 120.096620 31.942361 1.0 \n", "3 26.43 14.55 烟煤 江苏省 120.096620 31.942361 1.0 \n", "4 26.43 14.96 烟煤 江苏省 120.096620 31.942361 1.0 \n", "... ... ... .. ... ... ... ... \n", "5736 37.43 17.12 烟煤 浙江省 121.465840 28.704623 73.0 \n", "5737 39.87 18.01 烟煤 浙江省 121.465840 28.704623 73.0 \n", "5738 39.32 19.74 烟煤 浙江省 121.465840 28.704623 73.0 \n", "5739 38.84 7.28 烟煤 陕西省 109.820265 38.304383 1151.0 \n", "5740 38.84 7.28 烟煤 陕西省 109.820265 38.304383 1151.0 \n", "\n", " 发电碳排放因子(kg/kWh) 供热碳排放因子(kg/MJ) \n", "0 0.586990 0.076843 \n", "1 0.632859 0.077676 \n", "2 0.609196 0.074823 \n", "3 0.602178 0.081628 \n", "4 0.590254 0.081103 \n", "... ... ... \n", "5736 0.628300 0.078776 \n", "5737 0.595019 0.076622 \n", "5738 0.565718 0.074772 \n", "5739 0.664456 0.091482 \n", "5740 0.661759 0.091483 \n", "\n", "[5741 rows x 16 columns]" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "use_data" ] }, { "cell_type": "code", "execution_count": null, "id": "ff803c5a-5e56-462b-81fc-639877395d69", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.7.13" } }, "nbformat": 4, "nbformat_minor": 5 }