Assume some measurement data (in reality given about every minute) named logData
:
import pandas as pd, numpy as np
idxData = pd.to_datetime(['08:00', '08:15', '08:30', '08:45', '09:00'])
logData = pd.DataFrame(np.array([1.0, 2.0, 3.0, 4.0, 5.0]), columns=['val'], index=idxData)
idxRng = pd.interval_range(idxData[0], idxData[-1], freq='30min')
avgData = logData.groupby( pd.cut(logData.index, idxRng) ).mean()
The data is grouped into avgData
e.g. looking like this:
val
(08:00:00, 08:30:00] 2.5
(08:30:00, 09:00:00] 4.5
This downsampled avgData
should now (after performing some other calculations) be upsampled again, e.g. to a frequency of freq='10min'
for further calculations. Since avgData.resample('10min')
throws the following error, the question is how to resample categorical data?
TypeError: Only valid with DatetimeIndex, TimedeltaIndex or PeriodIndex, but got an instance of 'CategoricalIndex'
Many thanks in advance!