8-3 막대 그래프 – 그룹 간 차이 표현
바 차트: 데이터의 크기를 막대의 길이로 표현한 그래프.
평균 막대 그래프 생성
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)

Do It Yourself – mpg 데이터로 분석 문제 해결
Q1 어느 회사의 ‘SUV’ 모델이 시내에서 연비가 높은지 알아보려고 합니다. ‘SUV’ 모델의 cty(도심 주행거리) 평균이 가장 높은 5개사를 막대그래프로 표현하시오. 연비 순으로 막대를 정렬하십시오.
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 자동차 중에서 가장 많이 보이는 카테고리(차종)가 무엇인지 알고 싶습니다. 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')

※ 내용