한국복지패널데이터분석2

나이와 월급의 관계

  • 분석절차
    1. 변수 검토 및 전처리 : 나이, 월급
    2. 변수 간 관계 분석 : 나이에 따른 월급 평균표, 그래프만들기

      나이 변수 검토 및 전처리

      1. 변수 검토하기 - 태어난 연도를 이용해서 나이 변수를 만든다
      2. 전처리 - 코드표 » 태어난 연도 : 1900 ~ 2014, 모름/무응답 : 9999 - 결측치 없음
      3. 파생변수 만들기 - 나이 - 2015년 조사 자료이므로 나이 = 2015 - 태어난 연도 + 1
          welfare$age <- 2015 - welfare$birth + 1
          gplot(welfare$age)
        


        chp9-3

        나이와 월급 관계 분석

      4. 나이에 따른 월급 평균표 만들기
          age_income <- welfare %>%
         filter(!is.na(income)) %>%
         group_by(age) %>%
         summarise(mean_income = mean(income))
        
      5. 그래프 만들기
          ggplot(data = age_income, aes(x = age, y = mean_income)) + geom_line()
        


        chp9-4

연령대 및 성별 월급 차이

  • 분석절차
    1. 변수 검토 및 전처리 : 연령대, 성별, 월급
    2. 변수 간 관계 분석 : 연령대 및 성별 월급 평균표, 그래프 만들기

      연령대 및 성별 월급 차이 분석

      1. 연령대 및 성별 월급 평균표 만들기
          sex_income <- welfare %>%
         filter(!is.na(income)) %>%
         group_by(ageg, sex) %>%
         summarise(mean_income = mean(income))
         sex_income
        
      2. 그래프 만들기
          ggplot(data = sex_income, aes(x = ageg, y = mean_income, fill=sex)) +
         geom_col() +
         scale_x_discrete(limits = c("young","middle","old"))
        
           - fill : 막대가 성별에 따라 다른 색이 나오도록 함
           - scale_x_discrete(limits = c()) : 연령대 순으로 정렬   <br>![chp9-5](/assets/images/chp9-5.PNG)   ```r   ggplot(data = sex_income, aes(x = ageg, y = mean_income, fill=sex)) +  geom_col(position = "dodge") +  scale_x_discrete(limits = c("young","middle","old"))   ```
           - position = "dodge" : 성별에 따라 막대를 분리함   <br>![chp9-6](/assets/images/chp9-6.PNG)
        

직업별 월급 차이

  • 분석절차
    1. 변수 검토 및 전처리 : 직업, 월급
    2. 변수 간 관계 분석 : 직업별 월급 평균표 만들기, 그래프 만들기

      직업 변수 검토 및 전처리

      1. 변수 검토하기 : code_job은 직업코드로 이름이 아니기 때문에 직업 명칭 변수를 만들어야 한다
      2. 전처리 - 직업분류코드가 정리된 시트 불러오기
         library(readxl)
         list_job <- read_excel("Koweps_Codebook.xlsx", col_names = T, sheet = 2)
        
      3. left_join()을 이용해 job변수를 welfare에 결합 - 공통으로 들어가 있는 code_job변수를 이용
      welfare <- left_join(welfare, list_job, id = "code_job")
    
      welfare %>%
          filter(!is.na(code_job)) %>%
          select(code_job, job) %>%
          head()
    
         code_job                                job
      1       942                   경비원  검표원
      2       762                             전기공
      3       530 방문 노점  통신 판매 관련 종사자
      4       999        기타 서비스관련 단순 종사원
      5       312                    경영관련 사무원
      6       254             문리 기술  예능 강사
    

직업별 월급 차이 분석

  1. 직업별 월급 평균표 만들기

     job_income <- welfare %>%
         filter(!is.na(job) & !is.na(income)) %>%
         group_by(job) %>%
         summarise(mean_income = mean(income))
    
  2. 월급을 내림차순 정렬, 상위 10개 추출
     top10 <- job_income %>%
         arrange(desc(mean_income)) %>%
         head(10)
    
  3. 그래프 만들기
    • coord_flip() : 막대를 오른쪽으로 90도 회전
       ggplot(data = top10, aes(x = reorder(job, mean_income), y = mean_income)) +
        geom_col() +
        coord_flip()
      


      chp9-7

카테고리:

업데이트: