Как интерполировать временные ряды панд, используя разные временные меткиPython

Программы на Python
Ответить
Anonymous
 Как интерполировать временные ряды панд, используя разные временные метки

Сообщение Anonymous »

Я ищу функцию

Код: Выделить всё

pandas_interpolate(df: pd.DataFrame, newTime: pd.DatetimeIndex, method: str = 'linear') -> pd.DataFrame
который будет принимать существующий фрейм данных с индексом DatetimeIndex и возвращать новый фрейм данных с индексом, заданным newTime. Для каждого столбца значения нового кадра данных должны оцениваться путем интерполяции значений исходного кадра данных. По сути, эта функция должна вести себя аналогично numpy.interp. Мне известен метод pandas.DataFrame.interpolate, однако он интерполирует существующие значения NAN и не принимает новый индекс в качестве аргумента.
На данный момент у меня есть 2 идеи
  • Добавить новый индекс и конец кадра данных со всеми значениями, равными NAN, а затем удалить повторяющиеся индексы для точных меток времени, которые уже существуют. , затем используйте метод интерполяции pandas, а затем выбирайте только строки с новым индексом.
  • Преобразуйте фрейм данных в массив numpy. Прокрутите столбцы, используйте интерполяцию numpy, а затем преобразуйте обратно в фрейм данных.
Оба варианта, безусловно, будут работать, но они довольно уродливы. Есть ли способ сделать это?

Подробнее здесь: https://stackoverflow.com/questions/791 ... timestamps
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»