반응형
9-6 직업별 월급 차이 - 어떤 직업이 월급을 가장 많이 받을까?
분석 절차
1단계 변수 검토 및 전처리
- 직업
- 월급
2단계 변수 간 관계 분석
- 직업별 월급 평균표 만들기
- 그래프 만들기
직업 변수 검토 및 전처리하기
1. 변수 검토하기
2. 전처리하기
welfare['code_job'].dtypes # 변수 타입 출력
##출력: dtype('float64')
welfare['code_job'].value_counts() # 빈도 구하기
"""
611.0 962
941.0 391
521.0 354
312.0 275
873.0 236
...
112.0 2
784.0 2
423.0 1
861.0 1
872.0 1
Name: code_job, Length: 150, dtype: int64
"""
list_job = pd.read_excel('Koweps_Codebook_2019.xlsx', sheet_name = '직종코드')
list_job.head()
list_job.shape # 행, 열 개수 출력
##출력: (156, 2)
# welfare에 list_job 결합하기
welfare = welfare.merge(list_job, how = 'left', on = 'code_job')
# code_job 결측치 제거하고 code_job, job 출력
welfare.dropna(subset = ['code_job'])[['code_job', 'job']].head()
직업별 월급 차이 분석하기
1. 직업별 월급 평균표 만들기
## 직업별 월급 평균표 만들기
# job, income 결측치 제거
# job별 분리
# income 평균 구하기
job_income = welfare.dropna(subset = ['job', 'income']) \
.groupby('job', as_index = False) \
.agg(mean_income = ('income', 'mean'))
job_income.head()
2. 그래프 만들기
- 월급이 많은 직업
- 월급이 적은 직업
# 상위 10위 추출
top10 = job_income.sort_values('mean_income', ascending = False).head(10)
top10
# 맑은 고딕 폰트 설정
import matplotlib.pyplot as plt
plt.rcParams.update({'font.family' : 'Malgun Gothic'})
# 막대 그래프 만들기
sns.barplot(data = top10, y = 'job', x = 'mean_income')
# 하위 10위 추출
bottom10 = job_income.sort_values('mean_income').head(10)
bottom10
# 막대 그래프 만들기
sns.barplot(data = bottom10, y = 'job', x = 'mean_income') \
.set(xlim = [0, 800])
※ 해당 내용은 <Do it! 파이썬 데이터 분석>의 내용을 토대로 학습하며 정리한 내용입니다.
반응형
'데이터 분석 학습' 카테고리의 다른 글
9장 데이터 분석 프로젝트 - 한국인의 삶을 파악하라! (8) (0) | 2023.04.28 |
---|---|
9장 데이터 분석 프로젝트 - 한국인의 삶을 파악하라! (7) (0) | 2023.04.27 |
9장 데이터 분석 프로젝트 - 한국인의 삶을 파악하라! (5) (0) | 2023.04.25 |
9장 데이터 분석 프로젝트 - 한국인의 삶을 파악하라! (4) (0) | 2023.04.24 |
9장 데이터 분석 프로젝트 - 한국인의 삶을 파악하라! (3) (0) | 2023.04.23 |