Как работает Agg Pandas? 🐼
import pandas as pd
# Создаем DataFrame с данными
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'Salary': [5000, 7000, 6000]}
df = pd.DataFrame(data)
# Применяем агрегацию с помощью метода agg
result = df.agg({'Age': ['min', 'max'], 'Salary': 'mean'})
# Выводим результат
print(result)
В данном примере мы применяем агрегацию к столбцам "Age" и "Salary". Мы использовали функцию `min` для столбца "Age", чтобы найти минимальное значение, и функцию `max` для столбца "Age", чтобы найти максимальное значение. Для столбца "Salary" мы использовали функцию `mean`, чтобы найти среднее значение.
Это лишь один из множества способов использования метода `agg` в pandas. Вы можете определить свои собственные функции агрегации или использовать предопределенные функции, такие как `sum`, `mean`, `count` и многие другие.
Детальный ответ
Как работает agg в Pandas?
Метод agg в библиотеке Pandas предназначен для агрегирования данных. Он позволяет группировать данные по одному или нескольким столбцам и применять определенные агрегирующие функции для каждой группы.
Прежде чем погрузиться в детали работы метода agg, давайте рассмотрим пример:
import pandas as pd
# Создание DataFrame
data = {'name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob', 'Charlie'],
'score': [85, 92, 78, 90, 88, 95],
'subject': ['Math', 'Science', 'Math', 'Science', 'Math', 'Science']}
df = pd.DataFrame(data)
# Группировка и агрегация
result = df.groupby('name').agg({'score': ['mean', 'min', 'max'], 'subject': 'count'})
print(result)
В этом примере мы создаем DataFrame с данными о студентах и их оценках в разных предметах. Затем мы группируем данные по имени студента и применяем различные агрегирующие функции к столбцу "score" (среднее значение, минимум и максимум) и столбцу "subject" (количество предметов). Результат выводится на экран.
Теперь давайте разберемся, как работает метод agg.
1. Вначале мы используем метод groupby, чтобы разделить данные на группы на основе выбранных столбцов. В нашем примере мы группируем данные по столбцу "name".
2. Затем мы используем метод agg и передаем ему словарь, где ключи представляют названия столбцов, к которым мы хотим применить агрегирующие функции, а значения представляют сами функции.
3. Варианты передачи функций:
- Для одного столбца можно передать одну функцию в виде строки. Например:
{'score': 'mean'}
. - Для одного столбца можно передать несколько функций, используя список строк. Например:
{'score': ['mean', 'min']}
. - Для нескольких столбцов можно передать функции в виде списка словарей. Например:
{'score': ['mean', 'min'], 'subject': 'count'}
.
4. Результатом работы метода agg является новый DataFrame, содержащий группированные данные и результаты агрегации.
В нашем примере результат выглядит следующим образом:
score
mean min max subject
name
Alice 87.50 85 90 2
Bob 90.00 88 92 2
Charlie 86 78 95 2
Мы получаем среднюю оценку студента, минимальную и максимальную оценки, а также количество предметов для каждого студента.
Теперь вы понимаете, как работает метод agg в Pandas. Он очень полезен для агрегации данных и получения сводной информации о группах. Удачи в вашем изучении!