我有一个80,000行的csv文件,由四列ID、日期、时间和流量组成。如果流量数据丢失,则跳过丢失的数据,直到记录新的流量数据,然后继续记录数据。每15分钟进行一次流量测量。
示例:
USGS 2/12/2023 0:45 167
USGS 2/12/2023 1:00 170
USGS 2/12/2023 1:15 177
USGS 2/12/2023 1:45 170
USGS 2/12/2023 2:00 164
USGS 2/12/2023 2:15 177
USGS 2/12/2023 2:30 170
USGS 2/12/2023 2:45 180
此处2023年2月12日记录数据中缺少1:30。这些缺失数据可能是一次性的,也可能发生在多个小时或多天内。
我正在尝试编写一个python脚本,它会搜索丢失的时间步长,每当它找到跳过/丢失的行时,它会使用正确的ID、日期、时间和NA将替换行添加到丢失的位置。
示例
USGS 2/12/2023 0:45 167
USGS 2/12/2023 1:00 170
USGS 2/12/2023 1:15 177
USGS 2/12/2023 1:30 NA
USGS 2/12/2023 1:45 170
USGS 2/12/2023 2:00 164
USGS 2/12/2023 2:15 177
USGS 2/12/2023 2:30 170
USGS 2/12/2023 2:45 180
或
USGS 1/16/2023 23:00 329
USGS 1/16/2023 23:15 329
USGS 1/16/2023 23:30 329
USGS 1/16/2023 23:45 NA
USGS 1/17/2023 0:00 NA
USGS 1/17/2023 0:15 NA
USGS 1/17/2023 0:30 329
USGS 1/17/2023 0:45 329
USGS 1/17/2023 1:00 329
USGS 1/17/2023 1:15 329
USGS 1/17/2023 1:30 329
目前,我能够找到替换数据集中的单个值的解决方案,例如1:30的时间值或flow值nothing,它描述了整行缺失数据的替换。
1条答案
按热度按时间lymnna711#
你可以用Pandas来做这个,而且应该很快。
产出