Pandas: groupby 함수에서 열 이름을 바꾸는 방법


다음 기본 구문을 사용하여 Pandas의 groupby() 함수에서 열 이름을 바꿀 수 있습니다.

 df. groupby (' group_col '). agg (sum_col1=(' col1 ', ' sum '),
                            mean_col2=(' col2 ', ' mean '),
                            max_col3=(' col3 ', ' max '))

이 특정 예에서는 세 개의 집계 열을 계산하고 이름을 sum_col1 , Mean_col2max_col3 으로 지정합니다.

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: Pandas의 Groupby 함수에서 열 이름 바꾸기

다음과 같은 팬더 DataFrame이 있다고 가정합니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' points ': [30, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 6, 6, 5, 8, 7, 7, 9],
                   ' rebounds ': [4, 13, 15, 10, 7, 7, 5, 11]})

#view DataFrame
print (df)

  team points assists rebounds
0 to 30 5 4
1 to 22 6 13
2 A 19 6 15
3 A 14 5 10
4 B 14 8 7
5 B 11 7 7
6 B 20 7 5
7 B 28 9 11

다음 구문을 사용하여 열별로 행을 그룹화한 다음 집계 열에 특정 이름을 제공하면서 3개의 집계 열을 계산할 수 있습니다.

 #calculate several aggregated columns by group and rename aggregated columns
df. groupby (' team '). agg (sum_points=(' points ', ' sum '),
                       mean_assists=(' assists ', ' mean '),
                       max_rebounds=(' rebounds ', ' max '))

	sum_points mean_assists max_rebounds
team			
A 85 5.50 15
B 73 7.75 11

세 개의 집계된 열에는 agg() 함수에서 제공한 사용자 정의 이름이 있습니다.

또한 원하는 경우 NumPy 함수를 사용하여 agg() 함수의 합계, 평균 및 최대값을 계산할 수 있습니다.

 import numpy as np

#calculate several aggregated columns by group and rename aggregated columns
df. groupby (' team '). agg (sum_points=(' points ', np. sum ),
                       mean_assists=(' assists ', np. mean ),
                       max_rebounds=(' rebounds ', np. max ))

	sum_points mean_assists max_rebounds
team			
A 85 5.50 15
B 73 7.75 11

이 결과는 이전 예의 결과와 일치합니다.

추가 리소스

다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

Pandas에서 모든 열 이름을 나열하는 방법
Pandas에서 이름별로 열을 정렬하는 방법
Pandas에서 중복 열을 제거하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다