用python处理excel缺失行,如何实现寻找缺失小时行并循环插入空白行?

如图所示,下载到的数据中,经常出现小时值缺失的情况,为了保障求每天O3-8h最大值,需要在12和14之间插入一个空行(如果每天都有24行,后面用excel求最大值就可以直接拖出来了),但是一年数据量非常大,肉眼看不太现实,怎么用python把缺失的行数补出来呢?

问到代码了,已解决。

import csv
#打开需要处理的csv文本,需要注意格式设置为utf-8
with open('final.csv', 'r',encoding='utf-8',) as f:
#指定新文件的保存路径
    with open('new_final.csv', 'w',encoding='utf-8',) as new_f:
        i = 0
        reader = csv.reader(f)
        is_first_row = True
        writer = csv.writer(new_f)
        for row in reader:
            if is_first_row:
                writer.writerow(row)
                is_first_row = False
                continue
            while int(row[2]) != i:
                writer.writerow("")
                i = (i + 1) % 24
            writer.writerow(row)
            i = (i + 1) % 24
#注意,这里的row是从0开始,如csv第三列,row=2;第四列row=3,以此类推

 

麻烦问下  一年的数据是保存在一张表中?如果保存在一张表中这列数据是0-23循环还是逐一增加?    如果不是一张表  是分天保存还是分月保存?如果一月一个表    这列数据是0-23循环还是逐一增加?

之前碰到过类似的提问, 提供一个思路

1 用pandas生成一个日期+24小时的完整数据

2 用pd.merge() 将生成的数据和你的数据合并, 关键字就是日期和时间, 这样缺失的行就补齐了