Group_by та агрегації
Свайпніть щоб показати меню
Групування та агрегація даних — ключова частина підготовки даних, особливо коли потрібно підсумувати інформацію за категоріями. За допомогою Polars можна ефективно виконувати операції групування та агрегації результатів у паралельному режимі, що ідеально підходить для великих наборів даних. Припустимо, у вас є DataFrame під назвою games_df зі стовпцями, такими як developer, price, positive_reviews та negative_reviews. Можливо, ви захочете знайти середню ціну та загальну кількість відгуків для кожного розробника. У Polars це можна зробити за допомогою методу group_by, а також агрегуючих функцій, таких як mean і sum.
Ось як можна згрупувати games_df за стовпцем developer, обчислити середню ціну та підсумувати загальну кількість відгуків (об'єднуючи як позитивні, так і негативні відгуки):
123456789101112131415161718192021import polars as pl # Sample data games_df = pl.DataFrame({ "developer": ["DevA", "DevB", "DevA", "DevC", "DevB"], "price": [10.0, 20.0, 15.0, 30.0, 25.0], "positive_reviews": [100, 150, 200, 80, 120], "negative_reviews": [10, 20, 15, 5, 8] }) # Group by developer, calculate average price and total reviews result = ( games_df .group_by("developer") .agg([ pl.col("price").mean().alias("avg_price"), (pl.col("positive_reviews") + pl.col("negative_reviews")).sum().alias("total_reviews") ]) ) print(result)
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат