Как получить количество значений group_by в полярах?Python

Программы на Python
Ответить
Anonymous
 Как получить количество значений group_by в полярах?

Сообщение Anonymous »

Я только начал изучать «поляры» и пытаюсь преобразовать свой код pandas в поляры.
Вот мой код:
import polars as pl
import pandas as pd

pdf = pl.DataFrame({
"Country": ["US", "UK", "US"],
"Date": pd.to_datetime(["2023-01-01", "2023-02-01", "2023-03-01"])
})

df = pdf.to_pandas()

# Using Pandas
out = df.groupby('Country').apply(lambda row: row['Date'].dt.strftime('%Y-%m').value_counts()).unstack(0).sort_index()
print(out)

# How to do that in polars? (my attempt so far)
pdf = pdf.with_columns(
Date_ym = pdf['Date'].dt.strftime("%Y-%m")
)

out = (pdf.group_by("Country")
.agg(pl.col('Date_ym')
.value_counts())
.explode('Date_ym')
)

print(out)

Обязательный вывод:
shape: (3, 3)
┌─────────┬──────┬──────┐
│ Date ┆ UK ┆ US │
│ --- ┆ --- ┆ --- │
│ str ┆ f64 ┆ f64 │
╞═════════╪══════╪══════╡
│ 2023-01 ┆ null ┆ 1.0 │
│ 2023-02 ┆ 1.0 ┆ null │
│ 2023-03 ┆ null ┆ 1.0 │
└─────────┴──────┴──────┘


Подробнее здесь: https://stackoverflow.com/questions/765 ... -in-polars
Ответить

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

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

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

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

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