我正在处理较大的时间序列数据,并且出现不一致的情况,例如丢失的日期,或者甚至丢失一个小时或一段时间的数据。这是5年的车辆拥堵记录,从2012-10-02 09:00:00
到2017-05-17 23:00:00
,其格式为yyyy-mm-dd HH:MM:SS
。
在这些时间戳之间(共33750行),缺少几行。例如,2014年7月的某些日期缺少数据,8月2日,02:00到23:00缺少数据,依此类推。从2014-08-08 02:00开始到2015-06-10 01:00,整个数据丢失。考虑到数据框中的所有功能,我希望填补这些不一致之处。一共有15列,代表33750行。
print(main_data.columns)
Index(['date_time', 'is_holiday', 'air_pollution_index', 'humidity',
'wind_speed', 'wind_direction', 'visibility_in_miles', 'dew_point',
'temperature', 'rain_p_h', 'snow_p_h', 'clouds_all', 'weather_type',
'weather_description', 'traffic_volume'],
dtype='object')
date_time air_pollution_index humidity ... weather_type
2014-07-01 20:00:00 51 25 clear
2014-07-01 21:00:00 25 54 clear
2014-07-01 22:00:00 20 41 cloudy
2014-07-01 23:00:00 20 52 fog
2014-07-04 00:00:00 18 15 rain
2014-07-04 01:00:00 18 56 clear
2014-07-04 06:00:00 21 20 rain
.
.
.
2014-08-08 02:00:00 10 25 cloudy
2015-06-10 01:00:00 15 65 clear
2015-06-10 02:00:00 54 54 clear
2015-06-10 03:00:00 24 84 clear
这些只是上面时间戳中的少数不一致性(也不能显示每一列)。我想特别解决2014-08-08至2015-06-10之间的小时记录缺失数据。我知道resample
,但我相信它会干扰df的整个结构,还会手动设计丢失的时间戳,然后再设计每个功能,但这将非常耗时且昂贵。熊猫是否包含实用程序,可以在不影响现有行的情况下填写缺失的行?