统计干旱次数的代码

当我们计算出来SPEI指数,按照《气象干旱等级》需要对干旱发生的系数进行统计,但是面对很多个气象站,已经不能用手动来统计干旱发生的次数的时候,我们应该用到编程去统计,把统计的结果输出到一个表中。具体代码见:

import pandas as pd

# 读取Excel文件
df = pd.read_excel(r'D:\tongji\统计干旱次数.xlsx')

# 定义函数来判断干旱等级
def drought_level(spei):
    if spei <= -2.0:
        return '极端干旱'
    elif -2.0 < spei <= -1.5:
        return '严重干旱'
    elif -1.5 < spei <= -1.0:
        return '中等干旱'
    elif -1.0 < spei <= -0.5:
        return '轻度干旱'
    else:
        return '无干旱'

# 将V列筛选出来
station_columns = df.columns[2:]

# 创建一个空字典来存储每个气象站的干旱等级计数
drought_counts = {station: {'轻度干旱': 0, '中等干旱': 0, '严重干旱': 0, '极端干旱': 0, '无干旱': 0} for station in station_columns}

# 遍历数据框的每一行
for index, row in df.iterrows():
    year = row['year']
    month = row['month']
    for station in station_columns:
        spei = row[station]
        level = drought_level(spei)
        drought_counts[station][level] += 1

# 将结果转换为数据框
result_df = pd.DataFrame(drought_counts).T

# 将结果输出到新的Excel文件
result_df.to_excel(r'D:\tongji\干旱统计结果.xlsx')

接下来,让我们逐行解析一下这个代码:

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

___Y1

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

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

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

打赏作者

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

抵扣说明:

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

余额充值