# 데이터 불러오기

welfare <- read.spss(file = "Koweps_hpda18_2023_beta1.sav",
                         to.data.frame = T)
## Warning in read.spss(file = "Koweps_hpda18_2023_beta1.sav", to.data.frame = T):
## Koweps_hpda18_2023_beta1.sav: Compression bias (0) is not the usual value of
## 100
## Warning in read.spss(file = "Koweps_hpda18_2023_beta1.sav", to.data.frame = T):
## Koweps_hpda18_2023_beta1.sav: Very long string record(s) found (record type 7,
## subtype 14), each will be imported in consecutive separate variables

연구 목적 및 배경 설명

시간이 지날수록 우리나라의 빈부격차 문제는 점점 심각해지고 있다. 소득의 양극화가 가속화되면서 소득 편차의 정도가 심해지고 있다. 자본주의 사회에서 모두가 완전히 균등한 소득을 가지는 것은 불가능하겠지만, 평소 소득 양극화 문제에 관심이 많았기에 어떻게 하면 소득 편차의 정도를 줄일 수 있을 지에 대해 생각해 보았다. 그래서 이번 보고서를 통해 지역과 저소득 가구 간의 관계에 대해 조사하여 지역 별 저소득 가구의 특징과 인구적 특성을 파악하고, 이를 통해 소득 편차의 정도를 줄이는 방안을 마련하는데 도움이 되고자 한다.

이 보고서에서는 지역 별 저소득 가구의 인구 수, 지역 별 저소득 가구원 수, 지역 별 저소득 가구의 가구형태, 지역 별 저소득 가구의 소득, 지역 별 가구의 연령대를 파악해 지역과 저소득 가구 간의 여러 관계와 특징에 대해 알아볼 계획이다.

데이터에 대한 개괄적인 설명

해당 데이터는 ’2023년 18차 한국복지패널’이다. 한국보건사회연구원과 서울대학교 사회복지연구소가 한국복지환경과 관련하여 시행한 ’한국 복지 패널 조사’를 통해 수집된 데이터이며 연령, 소득계층, 경제활동상태 등에 따른 다양한 인구집단별 데이터를 역동적으로 파악한 결과이다. 가처분 소득, 소득에 따른 가구구분 등 이번 보고서에서 활용할 여러 데이터들을 확인할 수 있다.

데이터 정제 및 가공 과정

# 변수명 재설정

welfare_raw <- welfare %>% select(id = h18_id, # 가구번호
                                  dis_income = h18_din, # 가처분소득
                                  region = h18_reg7, # 지역
                                  house_classification = h18_hc, # 가구구분
                                  house_number = h1801_1, # 가구원 수
                                  relationship = h18_g2, # 가구주와의 관계
                                  sex = h18_g3, # 성별
                                  year = h18_g4, # 태어난 연도
                                  house_form = h1801_110) # 가구형태
# 각 행의 데이터 문자열로 변환

welfare_raw$region <- factor(welfare_raw$region, levels = c(1,2,3,4,5,6,7), 
                             labels = c("서울", "수도권", "경남", "경북", 
                                        "충남","강원/충북", "전라/제주"))

welfare_raw$sex <- factor(welfare_raw$sex, levels = c(1,2), labels = c("남", "여"))

welfare_raw$house_classification <- factor(welfare_raw$house_classification, 
                                           levels = c(1,2), labels = c("일반가구",
                                                                       "저소득층 가구"))

welfare_raw$house_form <- factor(welfare_raw$house_form, levels = c(1,2,3,4,5), 
                                 labels = c("단독", "모자", "부자", 
                                            "조손가구/소년소녀가장", "기타"))
# '가구주와의 관계' 데이터 문자열로 변환

welfare_raw$relationship <- ifelse(11 <= welfare_raw$relationship & 
                                     welfare_raw$relationship <= 16, "가구주의 자녀",
                            ifelse(111<= welfare_raw$relationship &
                                     welfare_raw$relationship <= 166, "가구주의 
                                   손주",
                            ifelse(21 <= welfare_raw$relationship &
                                     welfare_raw$relationship <= 26, "가구주 자녀의
                                   배우자",
                            ifelse(welfare_raw$relationship == 10, "가구주",
                            ifelse(welfare_raw$relationship == 20, "가구주의 배우자",
                                   welfare_raw$relationship)))))

welfare_raw$relationship <- as.factor(welfare_raw$relationship)
# '기타' 가구형태 제외

table(welfare_raw$house_form)
## 
##                  단독                  모자                  부자 
##                  2972                   103                    44 
## 조손가구/소년소녀가장                  기타 
##                    34                 12778
welfare_raw <- filter(welfare_raw, welfare_raw$house_form != "기타")

# 가구구분 "저소득층 가구'만 남겨두기
table(welfare_raw$house_classification)
## 
##      일반가구 저소득층 가구 
##           646          1101
welfare_raw <- filter(welfare_raw, welfare_raw$house_classification != "일반가구")

데이터 분석

# 데이터의 편리한 사용을 위해 attach 함수 사용

attach(welfare_raw)

그래프 만들기 & Figure

# 지역 별 저소득층 가구의 인구 수

par(family="AppleGothic") # UTF-8로 변경해도 한글 깨짐이 계속되어 추가

low_people <- table(welfare_raw$region)

pie(low_people, xlab = "지역 별 저소득층 가구의 인구 수")

# 성별을 포함한 지역 별 저소득층 가구의 인구 수

par(family="AppleGothic") # UTF-8로 변경해도 한글 깨짐이 계속되어 추가

low_people_sex <- table(welfare_raw$sex, welfare_raw$region)
barplot(low_people_sex, xlab = "지역 별 저소득층 가구의 인구 수",
        col = c("blue", "pink"), beside = T)

지역 별 저소득층 가구의 인구 수에 대한 그래프이다. ‘전라/제주’에 저소득층 가구 인구 수가 가장 많았으며, ’경남’, ‘수도권’, ‘경북’, ‘서울’, ‘강원/충북’, ‘충남’ 순으로 저소득층 가구 인구 수가 많았다. ‘성별’ 변수를 추가한 그래프도 만들었는데, 모든 지역에서 ‘여자’ 저소득층 가구 인구 수가 ‘남자’ 저소득층 가구 인구 수보다 월등히 많은 것을 확인할 수 있었다. 지역 별 저소득층 가구의 인구 수와 성별에 따른 저소득층 가구의 인구 수 차이를 한눈에 쉽게 확인하기 위해 원그래프와 막대그래프를 사용하였다.

# 지역 별 저소득층 가구의 가구원 수

par(family="AppleGothic")

low_house_number <- table(welfare_raw$house_number, welfare_raw$region)

barplot(low_house_number, xlab = "지역 별 저소득층 가구의 가구원 수",
        col = c("red", "yellow", "orange", "green"), beside = T)

legend("topleft", levels(as.factor(welfare_raw$house_number)), lty = c(1,1,1,1,1),
       col = c("red", "yellow", "orange", "green"))

지역 별 저소득층 가구의 가구원 수에 대한 그래프이다. 저소득층 가구의 가구원 수는 1명부터 4명까지 존재한다. 저소득층 가구 중 1인 가구의 비율이 압도적으로 높은 것을 확인할 수 있다. 1인 저소득층 가구의 가구원 수는 ‘전라/제주’가 가장 많았고 ’수도권’, ‘경남’, ‘경북’, ‘서울’, ‘강원/충북’, ‘충남’ 순으로 많았다. 2인 가구의 경우, 저소득층 가구의 수가 모든 지역에서 큰 차이 없이 비슷하였다. 놀라운 점은 3인, 4인 가구의 경우, 저소득층 가구가 아예 존재하지 않는 지역이 있다는 점이다. 그래프에서도 orange(3인), green(4인)이 없는 지역이 있음을 확인할 수 있다.

# 지역 별 저소득층 가구의 가구형태

par(family="AppleGothic")

low_house_form <- table(welfare_raw$house_form, welfare_raw$region)

barplot(low_house_form, xlab = "지역 별 저소득층 가구의 가구형태", 
        col = c("steelblue", "purple", "pink", "orange"), beside = F)

legend("topleft", levels(welfare_raw$house_form), lty = c(1,1,1,1),
       col = c("steelblue", "purple", "pink", "orange"))

지역 별 저소득층 가구의 가구형태에 대한 그래프이다. 저소득층 가구의 가구형태는 ‘단독’, ‘모자’, ‘부자’, ‘조손가구/소년소녀가장’이 존재한다. 앞서 확인하였듯이, ’단독’ 가구형태가 모든 지역에서 가장 많음을 알 수 있으며, 지역 별 저소득층 가구의 가구 수는 ‘단독’ 가구형태의 수에 따라 결정된다고 해도 과언이 아니다. ‘모자’ 가구형태가 ‘단독’ 가구형태의 뒤를 이어 모든 지역에서 가장 많은 수를 차지하였다. ‘부자’ 가구형태와 ‘조손가구/소년소녀가장’ 가구형태는 ‘수도권’, ’충남’과 같이 아예 존재하지 않는 지역도 있을만큼 전 지역에서 그 수가 매우 적음을 확인할 수 있다.

# 지역 별 저소득층 가구의 소득

library(extrafont)
## Registering fonts with R
loadfonts(device = "win")
## Warning in loadfonts_win(quiet = quiet): OS is not Windows. No fonts registered
## with windowsFonts().
theme_set(theme_grey(base_family = 'AppleGothic'))

low_house_income <- welfare_raw %>% 
  group_by(region) %>% 
  summarise(mean_dis_income = mean(dis_income, na.rm = TRUE)) %>% 
  as.data.table()

ggplot(low_house_income, aes(x = region, y = mean_dis_income)) +
  geom_line(color = "blue", size = 2) +
  geom_point(color = "blue", size = 3) +
  labs(x = "지역", y = "저소득층 가구의 소득", title = "지역 별 저소득층 가구의 소득") +
  theme_minimal(base_family = 'AppleGothic')
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## `geom_line()`: Each group consists of only one observation.
## ℹ Do you need to adjust the group aesthetic?

지역 별 저소득층 가구의 소득에 대한 그래프이다. ‘강원/충북’의 소득이 가장 높았고, 그 다음으로는 ’충남’, ‘서울’, ‘경남’, ‘수도권’, ‘경북’, ‘전라/제주’ 순으로 소득이 높았다. 저소득층 가구 인구 수가 가장 많았던 ’전라/제주’가 역시 소득은 가장 낮음을 다시 한번 확인할 수 있었고, 지역 별 소득의 차이는 다른 변수들에 비해 큰 차이가 나지 않음을 알게 되었다.

# 지역 별 저소득층 가구의 연령대

par(family="AppleGothic")

table(welfare_raw$year)
## 
## 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 
##    2    2    7    5   11   20   23   15   24   45   52   53   45   53   57   49 
## 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 
##   68   40   32   26   35   42   25   25   23   28   21   15   15   13   16   16 
## 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 
##   10   11   11   11    9    6    5    5    8    7    1    5    7    5    1    7 
## 1974 1975 1976 1978 1979 1980 1981 1982 1983 1986 1987 1988 1990 1991 1992 1993 
##    3    3    3    6    3    3    2    2    1    1    3    1    2    2    1    3 
## 1994 1995 1996 1997 1998 1999 2001 2002 2003 2004 2005 2006 2007 2008 2010 2011 
##    1    2    1    2    1    2    5    4    2    3    6    6    5    3    1    1 
## 2012 2013 2017 
##    1    2    2
welfare_raw$year <- ifelse(year <= 1950, "노년층",
                           ifelse(year <= 1970, "중년층",
                                  ifelse(year <= 1990, "장년층",
                                         ifelse(year <= 2005, "청년층", "아동층"))))

low_people_age <- table(welfare_raw$year, welfare_raw$region)
barplot(low_people_age, xlab = "지역 별 저소득 가구의 나이대",
        col = c("red", "steelblue", "orange", "green", "purple"), 
        beside = T, horiz = T)

legend("topright", levels(as.factor(welfare_raw$year)), lty = c(1,1,1,1,1), 
       col = c("red", "steelblue", "orange", "green", "purple"))

지역 별 저소득층 가구의 연령대에 대한 그래프이다. 연령대는 ‘노년층’, ‘중년층’, ‘장년층’, ‘청년층’, ‘아동층’으로 구성되어 있다. 예상된 결과이지만 모든 지역에서 ’노년층’이 차지하는 비율이 가장 높았다. ’노년층’은 다른 연령대에 비해 근로능력이 현저히 떨어지는 것이 그 원인일 것이다. ’노년층’ 다음으로는 ‘중년층’이 가장 많았고, ’아동층’, ‘장년층’, ’청년층’은 큰 차이 없이 비슷한 비율임을 확인하였다. 그래프를 통해 대부분의 연령대에서 저소득층 가구의 비율이 전라/제주에서 가장 높음을 확인할 수 있었고, 연령대 별 저소득층 가구 비율의 차이가 지역마다 모두 다름을 확인할 수 있다.

결론

이번 보고서를 통해 저소득층 가구와 지역 간의 여러 상관관계들에 대해 알아보았다. 먼저 지역 별 저소득층 가구의 인구 수를 원그래프를 통해 파악한 뒤, 성별을 추가하여 지역 별로 저소득층 가구를 구성하는 남녀의 비율을 막대그래프를 통해 알아보았다. 그 다음, 지역 별 저소득층 가구의 가구원수와 가구형태를 조사하여 1 ~ 4인 가구 중 어떤 가구가, 어떤 가구형태가 저소득층 가구 중에서 가장 많은 비율을 차지하고 있는지를 조사하였다. 다음으로 지역 별 저소득층 가구의 소득을 조사하여 지역 간의 소득 차이에 대해 알아본 뒤, 지역 별 저소득층 가구의 연령대를 알아보며 탐구를 마무리하였다.

이번 보고서를 작성하면서 ‘전라/제주’에 저소득층 가구의 인구 수가 가장 많다는 사실을 새롭게 알게 되었다. 그리고 ’성별’, ‘가구원 수’, ‘가구형태’ 등 여러 변수들을 대입하여 그 상관관계를 파악해보면서, ‘지역’과 ’저소득층 가구’ 간의 관계에 어떤 변수를 대입하냐에 따라 얻을 수 있는 결론이 모두 다르다는 것을 느꼈다. 그리고 이는 소득편차를 줄이는 방안을 마련할 때 현재 상황을 단순하게만 바라보면 안됨을 깨닫게 해주었다. 단순히 지역 별 소득수준의 차이만 보는 것이 아니라 앞서 언급했던 여러가지 요소들을 복합적으로 고려하여 다양한 방안을 마련하고, 이에 알맞는 적절한 지원을 하는 것이 향후 대한민국의 빈부격차 문제를 해결하고, 소득편차를 줄일 수 있는 방법일 것이다.