본문 바로가기

Pandas/Grouping

Part 5 - Grouping

# 특정 컬럼의 값 세기

train.Parch.value_counts()

 

# 특정 컬럼의 유일값 세고 top 3 뽑기

top3 = train.Parch.value_counts().nlargest(3)

 

# 특정 기준보다 작은 것 찾기

threshold = 0.015
small_categories = frequencies[frequencies < threshold].index
small_categories

 

#원하는 그룹만 추출하기

a = data.groupby('Pclass').get_group(1)
a

 

# count : 그룹 내 non-NA 개수 

train.groupby(['Pclass','Parch'])['Pclass'].count()

 

# sum : 그룹 내 non-NA 합 

train.groupby(['Pclass','Parch'])['Pclass'].sum()

 

 

# 데이터프레임으로 만들기 : to_frame()

train.groupby(['Pclass','Survived'])['Pclass'].count().to_frame()

 

# 데이터프레임에 색상 입히기 : style.background_gradient(cmap='summer_r')

train.groupby(['Pclass','Survived'])['Pclass'].count().to_frame().style.background_gradient(cmap='summer_r')

 

#age값별로 개수를 구하기

data.Age.value_counts()

 

#그룹 만들기

data['Agroup'] = 1

data.loc[(data.Age.values < 24.0), 'Agroup']= 0
data.loc[(data.Age.values > 30.0), 'Agroup']= 2

 

# cut : 특정 조건에 맞게 데이터 분류

data['Age_Cuts'] = pd.cut(data.Age, 
                          bins=[0, 1, 3, 10, 18, 65, 99], 
                          labels=['Baby', 'Todler', 'Kid', 'Teens',  'Adult', 'Elderly'])