Я планирую:

  • присоединиться
  • группировать по
  • фильтр

данные с использованием pyarrow (новичок в этом). Идея состоит в том, чтобы получить лучшую производительность и использование памяти (сжатие apache arrow) по сравнению с pandas.

Похоже, pyarrow не поддерживает объединение двух таблиц / наборов данных по ключу, поэтому мне придется вернуться к pandas.

Я не очень понимаю, как работает интеграция pyarrow <-> pandas. Будет ли pandas реально использовать структуру данных apache arrow? Меня устраивает использование только этих типов.

  • строка
  • long
  • decimal

У меня такое чувство, что pandas скопирует все данные из apache arrow и удвоит размер (согласно документу)

Ответы (1)

pyarrow сама по себе не предоставляет эти возможности конечному пользователю, а скорее предназначена как библиотека, которую разработчики библиотек DataFrame могут использовать в качестве основы. Таким образом, намерение состоит не в том, чтобы вы, как пользователь DataFrame, однажды перешли на использование pyarrow напрямую, а в том, чтобы такие библиотеки, как pandas, использовали Arrow в качестве бэкенда.

Это уже происходит с новым ArrowStringType, представленным в pandas 1.2 (пока не очень функциональным) или fletcher, которая предоставляет возможность использовать pyarrow в качестве бэкенда для выбора столбцов вашего pandas.DataFrame через pandas's ExtensionArray интерфейс.

Отказ от ответственности: я являюсь основным автором fletcher.

2022 WebDevInsider