본문 바로가기

데이터 분석 학습

8장 그래프 만들기 (2)

반응형

8-3 막대 그래프 - 집단 간 차이 표현하기

막대 그래프(bar chart): 데이터의 크기를 막대의 길이로 표현한 그래프

평균 막대 그래프 만들기

1. 집단별 평균표 만들기

df_mpg = mpg.groupby('drv').agg(mean_hwy = ('hwy', 'mean'))
df_mpg

df_mpg = mpg.groupby('drv', as_index = False).agg(mean_hwy = ('hwy', 'mean'))
df_mpg

 

2. 그래프 만들기

sns.barplot(data = df_mpg, x ='drv', y='mean_hwy')

3. 크기순으로 정렬하기

df_mpg = df_mpg.sort_values('mean_hwy', ascending = False)

sns.barplot(data = df_mpg, x ='drv', y ='mean_hwy')

빈도 막대 그래프 만들기

1. 집단별 빈도표 만들기

df_mpg = mpg.groupby('drv', as_index = False).agg(n = ('drv', 'count'))

df_mpg

2. 그래프 만들기

sns.barplot(data = df_mpg, x = 'drv', y ='n')

#빈도 막대 그래프
sns.countplot(data = mpg, x='drv')

mpg['drv'].unique()

##출력: array(['f', '4', 'r'], dtype=object)

df_mpg['drv'].unique()

##출력: array(['4', 'f', 'r'], dtype=object)
#막대 정렬
sns.countplot(data = mpg, x ='drv', order = ['4', 'f', 'r'])

mpg['drv'].value_counts().index

##출력: mpg['drv'].value_counts().index
sns.countplot(data = mpg, x = 'drv', order = mpg['drv'].value_counts().index)

 

혼자서 해보기 - mpg 데이터를 이용해 분석 문제를 해결해 보세요

Q1 어떤 회사에서 생산한 'suv' 차종의 도시 연비가 높은지 알아보려고 합니다. 'suv'차종을 대상으로 cty(도시 연비) 평균이 가장 높은 회사 다섯 곳을 막대 그래프로 표현해 보세요. 막대는 연비가 높은 순으로 정렬하세요

mpg = pd.read_csv('mpg.csv')

df = mpg.query('category == "suv"').groupby('manufacturer', as_index = False).agg(mean_cty = ('cty', 'mean')).sort_values('mean_cty', ascending = False).head()
df

sns.barplot(data = df, x = 'manufacturer', y = 'mean_cty')

Q2 자동차 중에 어떤 category(자동차 종류)가 많은지 알아보려고 합니다. sns.barplot()을 이용해 자동차 종류별 빈도를 표현한 막대 그래프를 만들어 보세요. 막대는 빈도가 높은 순으로 정렬하세요

df_mpg = mpg.groupby('category', as_index = False).agg(n = ('category', 'count')).sort_values('n', ascending = False)
df_mpg

sns.barplot(data = df_mpg, x ='category', y ='n')

 

 

 

 

 

※ 해당 내용은 <Do it! 파이썬 데이터 분석>의 내용을 토대로 학습하며 정리한 내용입니다.

반응형