代码记录——日降水站点数据缺测进行线性插值

import pandas as pd
import numpy as np

# 原始文件路径
input_file_path = 'E:\\2000-2018excel\\黄河流域2000-2020.xlsx'
# 输出文件路径
output_file_path = 'E:\\processed_data.xlsx'

# 使用ExcelWriter创建一个新的Excel文件
with pd.ExcelWriter(output_file_path, engine='xlsxwriter') as writer:
    # 遍历年份
    for year in range(2000, 2021):
        sheet_name = str(year)
        try:
            # 读取原始工作表
            df = pd.read_excel(input_file_path, sheet_name=sheet_name)

            # 将缺测值32766替换为NaN
            df.replace(32766, np.nan, inplace=True)

            # 假设“20-20时降水量”是我们要进行插值的列
            if '20-20时降水量' in df.columns:
                # 对“20-20时降水量”列进行线性插值
                df['20-20时降水量'].interpolate(method='linear', inplace=True, limit_direction='both')

                # 将处理后的DataFrame写入新的工作表
                df.to_excel(writer, sheet_name=sheet_name, index=False)  # 假设你不需要索引
            else:
                print(f"Sheet {sheet_name} does not contain column '20-20时降水量'")
        except Exception as e:
            print(f"Error reading or writing sheet {sheet_name}: {e}")

            # 处理完成后,Excel文件将包含所有处理过的工作表,每个工作表都以其对应的年份命名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值