You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于Pandas的Python数据处理自动化方案咨询

批量处理年度森林火灾数据的自动化方案

1. 统一管理年度DataFrame

首先把分散的各年份DataFrame存入字典,用年份作为键,方便后续遍历:

# 将所有年度DataFrame存入字典
year_dfs = {
    2013: df_in_2013,
    2014: df_in_2014,
    2015: df_in_2015,
    2016: df_in_2016,
    2017: df_in_2017,
    2018: df_in_2018,
    2019: df_in_2019,
    2020: df_in_2020,
    2021: df_in_2021,
    2022: df_in_2022
}

2. 批量统计火灾记录数

遍历字典,一次性计算所有年份的唯一记录数,结果存入字典或DataFrame:

total_records = {}
for year, df in year_dfs.items():
    total_records[year] = df['id'].nunique()

# 可选:转为DataFrame便于后续分析展示
import pandas as pd
records_summary = pd.DataFrame.from_dict(total_records, orient='index', columns=['total_fire_records'])

3. 批量计算过火面积

复用遍历逻辑,完成空值填充、求和、格式化的全流程:

total_burn_area_measure = " ha"
total_burnt_areas = {}

for year, df in year_dfs.items():
    # 填充空值后求和,避免空值影响计算结果
    burnt_area_total = df['icnf.burnArea.total'].fillna(0).sum()
    # 格式化数值并拼接单位
    total_burnt_areas[year] = "{:.2f}".format(burnt_area_total) + total_burn_area_measure

# 可选:转为DataFrame
burnt_area_summary = pd.DataFrame.from_dict(total_burnt_areas, orient='index', columns=['total_burnt_area'])

4. 合并结果(可选)

如果需要将记录数和过火面积整合到同一表格:

final_summary = records_summary.join(burnt_area_summary)

优势说明

  • 后续新增年份时,仅需在year_dfs字典中添加对应DataFrame,无需修改处理逻辑
  • 所有计算逻辑统一维护,减少重复代码和出错概率
  • 结构化的结果(字典/DataFrame)更便于后续可视化或数据发布

内容的提问来源于stack exchange,提问作者Jorge Gomes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 01:06:30