#python #pandas
Вопрос:
У меня есть фрейм данных Pandas с часовым разрешением, как вы можете видеть на скриншоте
Поэтому у меня есть значение температуры для каждого часа дня. Теперь я хотел бы увеличить временное разрешение и иметь записи каждые 15 минут (00:00, 00:15, 00:30, 00:45, 01:00, 01:15 и т.д.). И для каждой из новых записей значения температур должны быть линейно интерполированы.
Можете ли вы сказать мне, как я могу это сделать с помощью панд? Я был бы признателен за каждый комментарий.
Комментарии:
1. Не могли бы вы объяснить, как вычисляются / выбираются значения температур для промежуточных 15-минутных отметок? Вы просто берете (температура строки 2 — температура строки 1) / 4 и просто добавляете это в строку 1, чтобы получить промежуточные температуры до строки 2?
Ответ №1:
IIUC, вот один из способов:
df['Time (UTC)'] = pd.to_datetime(df['Time (UTC)'], format = '%d.%m.%Y %H:%M')
df1 = df.set_index('Time (UTC)').asfreq('15T')
df1.Temperature = df1.Temperature.interpolate()