用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

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...