如何解决用NaN填充日期间隔并插入5分钟的分辨率数据
我正在使用python和 我需要用NaN值填充日期间隔,我的数据如下所示:
"Date & Time","High Temp - °C","Low Temp - °C"
"12/4/19 00:00","0.0","-0.1"
"12/4/19 00:05","-0.1","-0.1"
"12/4/19 00:10","0.1","-0.1"
"12/4/19 00:25","0.1"
"12/4/19 00:30","0.2","0.1"
我想让他们像这样:
"Date & Time","-0.1"
"12/4/19 00:15","NaN","NaN"
"12/4/19 00:20","NaN"
"12/4/19 00:25","0.1"
之后,我想对数据进行插值以替换缺少的值。
我尝试过的是:
#%%
from pathlib import Path
import pandas as pd
data=pd.read_csv(Path().joinpath('C:....d_data\\..._data.csv'))
data['Date & Time']=pd.to_datetime(data['Date & Time'],format='%m/%d/%Y %hh:%mm')
data = data.sort_values(by=['Date & Time'],ascending=[True])
data.set_index('Date & Time',inplace=True)
print (data)
解决方法
您可以resample
进行以下操作:
import pandas as pd
# reading the csv
df = pd.read_csv('test.csv',parse_dates=['Date & Time'],index_col=0)
# resampling the data for every 5 min
df = df.resample('5T').mean()
print(df)
输出:
Date & Time High Temp - °C Low Temp - °C
2019-12-04 00:00:00 0.0 -0.1
2019-12-04 00:05:00 -0.1 -0.1
2019-12-04 00:10:00 0.1 -0.1
2019-12-04 00:15:00 NaN NaN
2019-12-04 00:20:00 NaN NaN
2019-12-04 00:25:00 0.1 0.1
2019-12-04 00:30:00 0.2 0.1
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。