Добавьте столбец даты для каждого файла с помощью Polars при агрегировании нескольких файлов Parquet.Python

Программы на Python
Ответить
Anonymous
 Добавьте столбец даты для каждого файла с помощью Polars при агрегировании нескольких файлов Parquet.

Сообщение Anonymous »

У меня есть очень большое количество файлов данных Parquet, которые я могу легко объединить и агрегировать с помощью Polars, делая что-то вроде этого (обратите внимание на глобус в имени файла):

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

(
pl.scan_parquet('data/data-16828*.parquet')
.groupby(['type_id', 'location_id'])
.agg([
pl.min('n').alias('n_min'),
pl.max('n').alias('n_max')
])
.collect()
)
Каждый файл представляет собой результат выполнения скрипта каждые пять минут, и моя цель — создать из них единый таймсерийный DataFrame. Существует столбец даты типа datetime[μs, UTC]. Однако я обнаружил, что значения этого столбца не равны в одном файле, а скорее отражают точное время во время выполнения, когда была создана строка. Из-за этого столбец даты бесполезен для группировки.
На мой взгляд, мне, вероятно, следует добавить новый столбец и заполнить его значениями date значение первой строки для каждого файла. Можно ли добиться этого с помощью ленивого API Polars, или мне придется сначала исправить файлы, прежде чем запускать агрегацию с помощью Polars?
Обратите внимание, что мне нужно использовать ленивый API как набор данных намного больше памяти.

Подробнее здесь: https://stackoverflow.com/questions/763 ... ltiple-par
Ответить

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

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

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

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

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