본문 바로가기

데이터 분석 학습

9장 데이터 분석 프로젝트 - 한국인의 삶을 파악하라! (2)

반응형

9-2 성별에 따른 월급 차이 - 성별에 따라 월급이 다를까?

분석 절차

1단계 - 변수 검토 및 전처리

  • 성별
  • 월급

2단계 - 변수 간 관계 분석

  • 성별 월급 평균표 만들기
  • 그래프 만들기

성별 변수 검토 및 전처리하기

1. 변수 검토하기

2. 전처리하기

welfare['sex'].dtypes  # 변수 타입 출력

##출력: dtype('float64')
welfare['sex'].value_counts()  # 빈도 구하기

"""
2.0    7913
1.0    6505
Name: sex, dtype: int64
"""
# 이상치 확인
welfare['sex'].value_counts()

"""
2.0    7913
1.0    6505
Name: sex, dtype: int64
"""
# 이상치 결측 처리
welfare['sex'] = np.where(welfare['sex'] == 9, np.nan, welfare['sex'])
 
# 결측치 확인
welfare['sex'].isna().sum()

##출력: 0
# 성별 항목 이름 부여
welfare['sex'] = np.where(welfare['sex'] == 1, 'male', 'female')

# 빈도 구하기
welfare['sex'].value_counts()

"""
female    7913
male      6505
Name: sex, dtype: int64
"""
# 빈도 막대 그래프 만들기
sns.countplot(data = welfare, x = 'sex')

월급 변수 검토 및 전처리하기

1. 변수 검토하기

2. 전처리하기

welfare['income'].dtypes  # 변수 타입 출력

##출력: dtype('float64')
welfare['income'].describe()  # 요약 통계량 구하기

"""
count    4534.000000
mean      268.455007
std       198.021206
min         0.000000
25%       150.000000
50%       220.000000
75%       345.750000
max      1892.000000
Name: income, dtype: float64
"""
sns.histplot(data = welfare, x = 'income')  # 히스토그램 만들기

welfare['income'].describe()  # 이상치 확인

"""
count    4534.000000
mean      268.455007
std       198.021206
min         0.000000
25%       150.000000
50%       220.000000
75%       345.750000
max      1892.000000
Name: income, dtype: float64
"""
welfare['income'].isna().sum()  # 결측치 확인

##출력: 9884
# 이상치 결측 처리
welfare['income'] = np.where(welfare['income'] == 9999, np.nan, welfare['income'])

# 결측치 확인
welfare['income'].isna().sum()

##출력: 9884

성별에 따른 월급 차이 분석하기

1. 성별 월급 평균표 만들기

2. 그래프 만들기

## 성별 월급 평균표 만들기

# income 결측치 제거
# sex별 분리
# income 평균 구하기
sex_income = welfare.dropna(subset = ['income']) \
                    .groupby('sex', as_index = False) \
                    .agg(mean_income = ('income', 'mean'))
sex_income

# 막대 그래프 만들기
sns.barplot(data = sex_income, x = 'sex', y = 'mean_income')

 

 

 

 

 

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

반응형