<Python>/[DataFrame]

파이썬 Pandas DataFrame 데이터 그룹화

9566 2021. 12. 19. 17:51
728x90

데이터 그룹화

1. X1의 각 원소마다의 X2값 평균
.groupby('X1').mean()['X2']

2. X1의 각 원소마다X2값 평균
.groupby('X1')['X2'].agg(**{'mean_X2' : 'mean'})

3. X1의 각 원소마다의 X2값 평균
.groupby('X1').agg(**{'mean_X2' : pd.NamedAgg(column='X2', aggfunc='mean')})

4. latitude의 각 원소마다의 longitude, total_rooms값 평균
df.groupby('latitude').agg(**{'mean_longitude':
                                    pd.NamedAgg(column = 'longitude',
                                                        aggfunc = 'mean') ,

                                    'mean_total_rooms' :
                                    pd.NamedAgg(column='total_rooms',
                                                        aggfunc = 'mean')})

 

 

실습 코드

import pandas as pd 
import numpy as np

df = pd.DataFrame({ 'X1': [0, 1, 2, 4, 0, 1, 2, 4], 
                           'X2': [5, 7, np.nan, 9, 0, 1, 2, 4], 
                           'X3': [np.nan, 10, np.nan, 12, 0, 1, 2, 4]}) 

# 1. X1의 각 원소마다의 X2값 평균
df.groupby('X1').mean()['X2']

# 2. X1의 각 원소마다 X2값 평균
df.groupby('X1')['X2'].agg(**{'mean_X2' : 'mean'})

# 3. X1의 각 원소마다의 X2값 평균
df.groupby('X1').agg(**{'mean_X2' : pd.NamedAgg(column='X2', aggfunc='mean')})

 

 

실습 결과

 

 

실습 파일

데이터 그룹화 by 9566.ipynb
0.00MB

728x90