Python 数据分析实战:碳捕获与封存(CCS)行业洞察

目录

一、案例背景

二、代码实现

2.1 数据收集

2.2 数据探索性分析

2.3 数据清洗

2.4 数据分析

2.4.1 CCS 项目成本影响因素分析

2.4.2 CCS 技术性能与项目效益关系分析

2.4.3 全球 CCS 项目碳封存量未来预测

三、主要的代码难点解析

3.1 数据收集

3.2 数据清洗 - CCS 项目成本数据处理

3.3 数据分析 - CCS 项目成本影响因素分析

3.4 数据分析 - CCS 技术性能与项目效益关系分析

3.5 数据可视化

四、可能改进的代码

4.1 数据收集改进

4.2 数据清洗改进

4.3 数据分析改进


一、案例背景

碳捕获与封存(Carbon Capture and Storage,CCS)技术是应对全球气候变化、实现碳中和目标的关键手段之一。它通过捕获工业生产过程中排放的二氧化碳,将其运输并封存于地下深处,从而大幅减少二氧化碳排放到大气中。该技术在能源(如煤炭、天然气发电站)、水泥、钢铁等碳排放密集型行业具有重要应用前景。然而,CCS 行业发展面临众多挑战。技术层面,碳捕获效率提升、运输过程的安全性与成本控制、地下封存的长期稳定性监测等问题亟待解决。经济上,高昂的建设和运营成本使得 CCS 项目投资回报周期长,缺乏市场竞争力。政策方面,相关的激励政策和监管机制尚不完善,影响企业参与积极性。通过 Python 进行深入数据分析,能够助力企业优化 CCS 项目运营,为政策制定者提供决策依据,推动 CCS 行业的规模化发展。

二、代码实现

python

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import requests
from bs4 import BeautifulSoup
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error
from statsmodels.tsa.statespace.sarimax import SARIMAX
from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler

2.1 数据收集

数据来源涵盖国际能源署(IEA)、国际碳捕获与封存协会(Global CCS Institute)等权威机构发布的报告,行业企业公开的项目数据,政府环境与能源部门的统计信息,以及学术研究文献中的实验数据。

python

# 从国际能源署网站抓取全球CCS项目数量及碳封存量数据
url = 'https://www.iea.org/reports/carbon - capture - and - storage - market - report'
headers = {
    'User - Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
}
response = requests.get(url, headers = headers)
soup = BeautifulSoup(response.text, 'html.parser')
project_data = []
table = soup.find('table', class_='ccs - project - table')
rows = table.find_all('tr')
for row in rows[1:]:
    cols = row.find_all('td')
    year = cols[0].text.strip()
    project_count = int(cols[1].text.strip())
    carbon_storage = float(cols[2].text.strip().replace('百万吨', ''))
    project_data.append({'Year': year, 'Project_Count': project_count, 'Carbon_Storage': carbon_storage})
project_df = pd.DataFrame(project_data)

python

# 从某大型CCS企业获取其项目成本构成数据(假设通过数据合作获取CSV文件)
cost_data = pd.read_csv('ccs_project_costs.csv')

2.2 数据探索性分析

python

# 查看全球CCS项目数据基本信息
print(project_df.info())
# 查看CCS项目成本数据基本信息
print(cost_data.info())

python

# 分析全球CCS项目数量随时间变化趋势
project_df['Year'] = pd.to_numeric(project_df['Year'])
plt.figure(figsize=(12, 6))
sns.lineplot(x='Year', y='Project_Count', data=project_df)
plt.title('Trend of Global CCS Project Quantity over Time')
plt.xlabel('Year')
plt.ylabel('Number of Projects')
plt.show()

python

# 查看CCS项目不同成本项占比
cost_share = cost_data.iloc[0, 1:].sum()
cost_data['Cost_Share'] = cost_data.iloc[0, 1:]/cost_share * 100
plt.figure(figsize=(10, 6))
sns.barplot(x=cost_data.columns[1:], y=cost_data['Cost_Share'])
plt.title('Cost Composition of CCS Projects')
plt.xlabel('Cost Item')
plt.ylabel('Cost Share (%)')
plt.xticks(rotation=45)
plt.show()

2.3 数据清洗

python

# 全球CCS项目数据清洗
# 检查并处理缺失值
project_df.dropna(inplace = True)
# 去除重复记录
project_df = project_df.drop_duplicates()

python

# CCS项目成本数据清洗
# 处理异常成本数据,如成本为负数
cost_data = cost_data[cost_data['Total_Cost
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

萧十一郎@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值