연구 목적 및 배경 설명

본 보고서는 한국복지패널조사 19차 데이터를 기반으로 연령, 성별, 연령대에 따른 건강 만족도 차이를 분석하는 데 목적이 있습니다.

현대 사회에서 건강은 단순한 신체적 상태를 넘어 주관적 인식과 깊은 관련이 있습니다. 따라서 건강 만족도의 사회적 차이를 파악함으로써 정책적 대응과 사회복지 방향에 기여할 수 있습니다.

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

본 분석에 사용된 데이터는 한국보건사회연구원에서 매년 수집·공개하는 전국 대표 복지 조사인 한국복지패널조사 19차(KOWEPS 2024)의 koweps_h19_2024_beta1.sav 파일이다.

조사 대상은 전국 가구 및 가구원으로, 주요 변수로는 성별, 연령, 연령대, 그리고 주관적 건강 만족도가 포함되어 있습니다.

주요 변수 설명:

gender: 성별 (남성, 여성)

age: 실제 나이 (연속형 변수)

ageg: 연령대 (청년층, 중년층, 노년층)

health_sat: 건강 만족도 점수 (1~5점 척도

데이터 정제 및 가공 과정

연구 목적에 맞게 다음과 같은 방식으로 데이터를 정제하고 가공하였습니다.

건강 만족도 평균 계산: 성별, 연령, 연령대별로 평균 건강 만족도를 계산

연령별 추세 시각화: LOESS 방법을 사용하여 연령 증가에 따른 건강 만족도 변화 추세 시각화

범주형 변수 처리: 성별 및 연령대 변수를 factor 처리하고 시각화를 위한 정렬 작업 수행

시각화 작업: ggplot2 패키지를 활용하여 막대그래프 및 추세선을 제작하고, 제목, 색상, 글꼴 등을 통일하여 가독성 확보

raw_data <- read_sav("D:/Desktop/koweps_hpc19_2024_beta1.sav")# 원본 데이터
selected_data <- raw_data[, c("h19_g3", "h19_g4", "p1903_5")]# 대상 열 선택
cleaned_data <- selected_data[complete.cases(selected_data),]# NA 항목의 행 제거

colnames(cleaned_data) <- c("gender", "birth", "heal_sat")# 열 이름 변경
summary(cleaned_data$heal_sat)# 건강 만족도 개요
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   1.000   3.000   3.000   3.241   4.000   5.000
cleaned_data$gender <- ifelse(cleaned_data$gender == 1, "남성", "여성")# 성별 할당
table(cleaned_data$gender)# 성별 분포
## 
## <U+B0A8><U+C131> <U+C5EC><U+C131> 
##             5472             7243
summary(cleaned_data$birth)# 출생연도 개요
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    1922    1948    1961    1964    1979    2006
cleaned_data$age <- 2025 - cleaned_data$birth# 나이
cleaned_data <- cleaned_data %>%
  mutate(ageg = ifelse(age < 30, "청년층",
                       ifelse(age <= 59, "중년층", "노년층")))# 연령 파생 변수

cleaned_data <- cleaned_data %>%
  mutate(satg = ifelse(heal_sat == c("1", "2"), "청년층",
                       ifelse(heal_sat == "3", "중년층", "노년층")))# 건강 만족도 파생 변수
## Warning: There was 1 warning in `mutate()`.
## i In argument: `satg = ifelse(...)`.
## Caused by warning in `heal_sat == c("1", "2")`:
## ! 长的对象长度不是短的对象长度的整倍数

데이터 분석

1. 성별에 따른 건강 만족도

성별에 따른 건강 만족도를 분석했다.성별 건강 만족도 평균은 gender_sat 내에 할당되었습니다.

gender_sat <- cleaned_data %>%
  group_by(gender) %>%
  summarise(mean_sat_gender = round(mean(heal_sat), 2)) %>%
  arrange(desc(mean_sat_gender))
gender_sat
## # A tibble: 2 x 2
##   gender           mean_sat_gender
##   <chr>                      <dbl>
## 1 <U+B0A8><U+C131>            3.36
## 2 <U+C5EC><U+C131>            3.15

2.나이에 따른 건강 만족도.

나이에 따른 건강 만족도를 분석했다.연령별 건강 만족도 평균은 age_sat 내에 할당됐다.

age_sat <- cleaned_data %>%
  group_by(age) %>%
  summarise(mean_sat_age = mean(heal_sat))
age_sat
## # A tibble: 85 x 2
##      age mean_sat_age
##    <dbl>        <dbl>
##  1    19         4.33
##  2    20         4   
##  3    21         3.98
##  4    22         3.98
##  5    23         3.96
##  6    24         3.84
##  7    25         3.92
##  8    26         3.90
##  9    27         3.99
## 10    28         3.87
## # i 75 more rows

3.연령대별 건강 만족도

연령대에 따른 건강 만족도를 분석했다.연령대별 건강 만족도 평균은 ageg_sat 내에 할당됐다.

ageg_sat <- cleaned_data %>%
  group_by(ageg) %>%
  summarise(mean_sat_ageg = round(mean(heal_sat), 2))
ageg_sat
## # A tibble: 3 x 2
##   ageg                     mean_sat_ageg
##   <chr>                            <dbl>
## 1 <U+B178><U+B144><U+CE35>          2.9 
## 2 <U+C911><U+B144><U+CE35>          3.63
## 3 <U+CCAD><U+B144><U+CE35>          3.91

4.전반적인 만족도

전반적인 만족도를 분석했습니다.

sat_pct <- cleaned_data %>%
  group_by(satg) %>%
  summarise(n = n()) %>%
  mutate(total = sum(n)) %>%
  mutate(pct_sat = round(n/total*100, 2))
sat_pct
## # A tibble: 3 x 4
##   satg                         n total pct_sat
##   <chr>                    <int> <int>   <dbl>
## 1 <U+B178><U+B144><U+CE35>  7485 12715    58.9
## 2 <U+C911><U+B144><U+CE35>  3752 12715    29.5
## 3 <U+CCAD><U+B144><U+CE35>  1478 12715    11.6

도면 작성

1.성별에 따른 건강 만족도

남성의 건강 만족도는 약 3.36, 여성의 건강 만족도는 약 3.15로 계산됐다.양자 차이는 약 0.21로 남성의 건강 만족도가 높다는 것을 알 수 있다.

ggplot(data = gender_sat, aes(x = reorder(gender, -mean_sat_gender), y = mean_sat_gender)) + 
  geom_col(stat = "identity", fill = c("#104680", "#6dadd1"), width = 0.4) + 
  geom_text(aes(label = mean_sat_gender), vjust = -1.5) + 
  scale_y_continuous(limits = c(0, 4)) + 
  ggtitle("성별별 건강 만족도") + 
  theme(plot.title = element_text(face = "bold", hjust = 0.5, size = 15, color = "darkblue")) + 
  labs(x = "성별", y = "건강 만족도")
## Warning in geom_col(stat = "identity", fill = c("#104680", "#6dadd1"), width =
## 0.4): Ignoring unknown parameters: `stat`

2. 연령에 따른 건강 만족도

이는 연령 증가에 따른 건강 만족도의 변화를 보여주는 그래프입니다.

초기에는 건강 만족도가 점차 하락하지만, 약 80세 이후 다시 상승하는 경향이 나타납니다.

ggplot(data = age_sat, aes(x = age, y = mean_sat_age)) + 
  geom_line() + 
  stat_smooth(color = "#FC4E07", method = "auto") + 
  ggtitle("연령에 따른 건강 만족도") + 
  theme(plot.title = element_text(face = "bold", hjust = 0.5, size = 15, color = "darkblue")) + 
  labs(x = "연령", y = "건강 만족도")
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'

3. 연령대별 건강 만족도

아래와 같이, 청년층의 건강 만족도가 가장 높으며 약 3.91, 중년층은 약 3.63,

노년층은 가장 낮아 약 2.90입니다. 청년층과 노년층의 차이는 약 0.99입니다.

ggplot(data = ageg_sat, aes(x = reorder(ageg, -mean_sat_ageg), y = mean_sat_ageg)) + 
  geom_col(stat = "identity", fill = c("#6dadd1", "#f6b293", "#b72230"), width = 0.4) + 
  geom_text(aes(label = mean_sat_ageg), vjust = -1.5) + 
  scale_y_continuous(limits = c(0, 5)) + 
  ggtitle("연령대별 건강 만족도") + 
  theme(plot.title = element_text(face = "bold", hjust = 0.5, size = 15, color = "darkblue")) + 
  labs(x = "연령대", y = "건강 만족도")
## Warning in geom_col(stat = "identity", fill = c("#6dadd1", "#f6b293",
## "#b72230"), : Ignoring unknown parameters: `stat`

4. 전체 건강 만족도

전반적인 건강 만족도는 다음과 같다.

ggplot(data = sat_pct, aes(x = " ", y = pct_sat, fill = satg)) + 
  geom_bar(stat = "identity") + 
  theme_void() + 
  coord_polar("y", start = 0) + 
  geom_text(aes(label = paste0(round(pct_sat, 1), "%")), position = position_stack(vjust = 0.5), color = "black", size = 5) + 
  ggtitle("전체 건강 만족도") + 
  theme(plot.title = element_text(face = "bold", hjust = 0.5, size = 15, color = "darkblue"))

#결론

본 연구는 2024년 한국복지패널 데이터를 바탕으로 건강 만족도에 대한 성별, 연령, 연령대 차이를 분석하였습니다. 주요 결론은 다음과 같습니다.

1. 성별 차이: 남성의 건강 만족도(3.36)가 여성(3.15)보다 전반적으로 높게 나타났으며, 이는 남성이 자기 건강에 대해 더 긍정적으로 인식함을 시사합니다.

2. 연령별 추세: 연령이 증가할수록 건강 만족도는 전반적으로 감소하며, 특히 중장년층부터 큰 폭으로 하락하다가 80세 이후에는 다소 상승하는 경향이 나타났습니다.

3. 연령대별 비교: 청년층(3.91)의 건강 만족도가 가장 높고, 중년층(3.63), 노년층(2.90) 순으로 뚜렷한 차이를 보였습니다.

이와 같은 분석 결과는 성별과 연령(또는 연령대)이 건강 만족도에 영향을 미치는 중요한 요인임을 보여줍니다. 따라서 향후 건강 정책 및 사회적 지원 체계 수립 시, 노년층과 여성의 주관적 건강 인식을 고려하는 것이 전체 국민의 삶의 질 향상에 기여할 수 있습니다.