Фрейм данных поляров через запрос Django

Я изучаю возможность перехода с Pandas на Polar. Мне нравится то, что я вижу.

В настоящее время просто получить данные в Pandas.

cf = Cashflow.objects.filter(acct=acct).values()
df = pd.DataFrame(cf)

Так что я решил, что это будет простое изменение - но это не будет работать для меня.

df = pl.DataFrame(cf)

В чем разница между использованием запроса в Django и размещением данных в Polars?

Спасибо.

Вам просто нужно проверить входные параметры Polars и выходной тип данных кверисета Django. В Polars конструктор pl.DataFrame() ожидает список словарей или список других структур данных. Также при выполнении Cashflow.objects.filter(acct=acct).values() в Django результатом будет кверисет словарей, где каждый словарь представляет собой строку данных. Пример приведен ниже:

<QuerySet [{'id': 1, 'name': 'Beatles Blog', 'tagline': 'All the latest Beatles news.'}]>

Поэтому единственное, что вам нужно сделать, это преобразовать полученный набор queryset в список перед передачей его в Polars:

cf_list = list(Cashflow.objects.filter(account=acct).values())

df = pl.DataFrame(cf_list)
Вернуться на верх