- R을 이용한 대한민국의 민주주의 지수 정량 분석2023년 06월 09일 15시 49분 25초에 업로드 된 글입니다.작성자: r-code-for-data-analysis
사회과학에서도 R을 이용한 분석이 활발히 이루어지고 있어 관련 사이트를 참고하여 분석해보려고 한다.
참고 사이트
https://rforpoliticalscience.com/2022/03/18/download-democracy-data-with-democracydata-pacakge-in-r/
Download democracy data with democracyData package in R
Packages we will need: library(democracyData) library(tidyverse) library(magrittr) # for pipes library(ggstream) # proportion plots library(ggthemes) # nice ggplot themes library(forcats) # reorder…
rforpoliticalscience.com
민주주의와 독재, 이분법적으로 나누는 데 있어 80개 이상의 변수를 사용했다고 한다.
관련 논문을 찾아보았다.
https://www.jstor.org/stable/40661005
chatpdf를 통해 논문을 요약해보았다.
이 문서는 민주주의와 독재에 대한 연구를 다루며, 다양한 정치 체제 측정 방법의 강점과 약점을 논하고 이진 체제 분류의 확장을 제안한다. 이들은 연구 질문에 대한 대답, 의미 있는 해석 및 재현성을 기반으로 이러한 측정 방법을 평가하는 것이 중요하다고 강조한다.
민주주의의 강점은 개인의 자유와 권리를 보호하고, 다양한 이해관계자들이 참여하여 의사결정을 내리는 것입니다. 민주주의는 또한 투표와 대화를 통해 대립적인 이해관계자들 간에 타협을 이루는 것을 장려합니다. 반면, 민주주의의 약점은 속도가 느리고 비용이 많이 드는 결정 과정, 다수결에 의한 소수 의견 제압, 정치적 권력과 자본력이 집중되어 있는 경우에는 부패와 부당한 영향력 등이 있습니다.
독재의 강점은 결정력이 빠르고 효율적이며, 안정적인 통치를 제공할 수 있다는 것입니다. 또한 독재자는 자신의 권력을 유지하기 위해 경제 발전과 같은 긍정적인 결과를 얻으려고 할 수 있습니다. 반면, 독재의 약점은 개인의 자유와 권리를 제한하며, 다양한 이해관계자들이 참여하지 않기 때문에 의사결정 과정에서 대중의 의견을 반영하지 못할 수 있습니다. 또한 독재자가 부당한 권력을 남용하거나 부패를 일으킬 가능성도 있습니다.
아래와 같은 로직으로 민주주의와 독재의 형태를 분류하였다.
그러면 본격적으로 R을 이용하여 코딩한 것을 따라 해보자.
가장 중요한 것은 데이터셋 패키지 다운로드. 아래는 github 주소
https://github.com/xmarquez/democracyData
GitHub - xmarquez/democracyData: Access and manipulate most standard scholarly measures of democracy
Access and manipulate most standard scholarly measures of democracy - GitHub - xmarquez/democracyData: Access and manipulate most standard scholarly measures of democracy
github.com
remotes::install_github("xmarquez/democracyData", force = TRUE) library(democracyData) library(peacesciencer)
다음으로는 데이터 분석을 위한 패키지 로드
library(tidyverse) library(ggstream) # proportion plots library(ggthemes) # nice ggplot themes library(forcats) # reorder factor variables library(ggflags) # add flags library(countrycode) # add ISO codes to countries
그러면 본격적으로 데이터를 살펴보자. pacl로 데이터를 불러오면 82개의 칼럼에 각각 나라별, 연도별 정치 관련 데이터가 나온다. 여기서 민주주의 지수 관련 칼럼은 69번째 "regime"이다.
pacl <- redownload_pacl() colnames(pacl) [1] "order" "pacl_country" "year" [4] "aclpcode" "pacl_cowcode" "cowcode2" [7] "ccdcodelet" "ccdcodenum" "aclpyear" [10] "cowcode2year" "cowcodeyear" "chgterr" [13] "ychgterr" "flagc_cowcode2" "flage_cowcode2" [16] "entryy" "exity" "cid" [19] "wdicode" "imf_code" "politycode" [22] "bankscode" "dpicode" "uncode" [25] "un_region" "un_region_name" "un_continent" [28] "un_continent_name" "aclp_region" "bornyear" [31] "endyear" "dupcow" "dupwdi" [34] "dupun" "dupdpi" "dupimf" [37] "dupbanks" "exselec" "legselec" [40] "closed" "dejure" "defacto" [43] "defacto2" "lparty" "incumb" [46] "type2" "collect" "nheads" [49] "nmil" "nhead" "npost" [52] "ndate" "eheads" "ageeh" [55] "emil" "royal" "headdiff" [58] "ehead" "epost" "edate" [61] "tenure08" "comm" "ecens08" [64] "edeath" "flageh" "democracy" [67] "assconfid" "poppreselec" "regime" [70] "tt" "ttd" "tta" [73] "flagc" "flagdem" "flagreg" [76] "agedem" "agereg" "stra" [79] "extended_country_name" "GWn" "cown" [82] "in_GW_system" >
이걸 0~5로 나누어서 "의회 민주주의", "혼합 민주주의", "대통령제 민주주의", "민간 독재", "군사 독재", "왕정 독재"로 명칭 하자.
%<>% 파이프라인을 쓰면 mutate로 만든 것을 자기 자신에 바로 넣을 수 있다. 그리고 순서를 정해주었다.
pacl %<>% mutate(regime_name = case_when( regime == "0" ~ "Parliamentary democracies", regime == 1 ~ "Mixed democracies", regime == 2 ~ "Presidential democracies", regime == 3 ~ "Civilian autocracies", regime == 4 ~ "Military dictatorships", regime == 4 ~ "Royal dictatorships", TRUE ~ NA_character_ ) ) %>% mutate(regime_name= as.factor(regime_name)) %>% mutate(regime_name = factor(regime_name, levels = c("Parliamentary democracies", "Presidential democracies", "Mixed democracies", "Royal dictatorships", "Civilian autocracies", "Military dictatorships")))
그리고 연도, 대륙별, 민주주의 지수의 합을 구해보자
> pacl %>% + group_by(year, un_continent_name) %>% + filter(!is.na(regime_name)) %>% + count(regime_name) # A tibble: 1,147 × 4 # Groups: year, un_continent_name [337] year un_continent_name regime_name n <dbl> <chr> <fct> <int> 1 1946 Africa Civilian autocracies 2 2 1946 Americas Parliamentary democracies 1 3 1946 Americas Presidential democracies 12 4 1946 Americas Civilian autocracies 3 5 1946 Americas Military dictatorships 6 6 1946 Asia Parliamentary democracies 2 7 1946 Asia Presidential democracies 1 8 1946 Asia Civilian autocracies 3 9 1946 Asia Military dictatorships 3 10 1946 Europe Parliamentary democracies 11
이를 오세아니아는 호주밖에 없으므로 이것을 제외하고 대륙별 민주주의 지수를 그래프로 나타내보자
pacl %>% group_by(year, un_continent_name) %>% filter(!is.na(regime_name)) %>% count(regime_name) %>% filter(un_continent_name != "") %>% filter(un_continent_name != "Oceania") %>% ggplot(aes(x = year, y = n, groups = regime_name, fill = regime_name)) + ggstream::geom_stream(type = "proportion") + facet_wrap(~un_continent_name) + scale_fill_manual(values = regime_palette) + ggthemes::theme_fivethirtyeight() + theme(legend.title = element_blank(), text = element_text(size = 30))
초록색에서 빨간색으로 갈수록 민주주의에서 독재형태이다. 대륙 전체적으로 연도별 민주주의 형태가 증가하는 방향으로 색이 보인다.
특별히 남북한만 데이터를 취해서 연도별로 그래프를 그려보자. 이때는 Curtis Bell은 2016년에 만든 데이터를 사용하였다.
https://oneearthfuture.org/reign-dataset-international-elections-and-leaders
reign <- redownload_reign() fh <- download_fh() polityiv <- redownload_polityIV()
남북한만 데이터를 따로 취하면 아래와 같다.
democracy_scores <- peacesciencer::create_stateyears() %>% add_gwcode_to_cow() %>% add_democracy() reign %>% select(ccode = cown, everything()) %>% inner_join(democracy_scores, by = c("year", "ccode")) -> reign_demo reign_demo %>% filter(year > 1945) %>% mutate(gwf_regimetype = str_to_title(gwf_regimetype)) %>% mutate(iso2c_lower = tolower(countrycode::countrycode(reign_country, "country.name", "iso2c"))) %>% filter(reign_country == "Korea North" | reign_country == "Korea South") -> korea_reign
그럼 그래프로 그려보자
나라별 깃발데이터를 그래프에 넣기 위하여 간단한 전처리를 먼저 하였다.
korea_start <- korea_reign %>% group_by(reign_country) %>% slice(which.min(year)) %>% ungroup() korea_reign %>% ggplot(aes(x = year, y = v2x_polyarchy, groups = reign_country)) + geom_line(aes(color = gwf_regimetype), size = 7, alpha = 0.7, show.legend = FALSE) + geom_point(aes(color = gwf_regimetype), size = 7, alpha = 0.7) + ggflags::geom_flag(data = korea_start, aes(y = v2x_polyarchy, x = 1945, country = iso2c_lower), size = 20) -> korea_plot
그리고 그래프화 하면 아래와 같다.
북한은 김 씨 왕조국가이므로 고동색으로 일정한 수치를 가지는 반면
남한은 이승만(민간독재) - 윤보선(의회민주주의) - 박정희(군사독재) - 전두환(군사독재) 까지는 0.5를 넘지 않은 수치를 가지다가 노태우부터는 대통령제를 가진다.
노태우 - 김영삼 - 김대중 - 노무현 까지는 민주주의 수치가 0.9 근처까지 증가하다가
이명박-박근혜는 감소하여 0.75 아래로 떨어진다. 그리고 문재인 대통령 때 다시 0.9까지 회복된다.
이명박, 박근혜 두 대통령때 언론 통제와 집회, 결사의 자유를 억압한 것이 수치로 보인다.
과연 현 윤석열 대통령이 임기가 끝나면 아래 그래프의 형태가 어떻게 될지 궁금하다.
(자유를 외치는 자가 민주주의 수치를 떨어뜨리는 것인지 지켜보겠다.)
대통령 이름을 넣어서 다시 그려보았다.
korea_seg <- tibble(year = rep(c(1960, 1961, 1978, 1987, 1992, 1997, 2002, 2007, 2012, 2016), 2), v2x_polyarchy = c(rep(0.9, 10), rep(0.16, 10)), reign_country = "Korea North") korea_label <- tibble(x = c(1955, 1961, 1973, 1983, 1990, 1995, 2000, 2005, 2010, 2014, 2018), y= c(rep(0.7, 11)), reign_country = "Korea North", label = c("이승만","윤보선", "박정희", "전두환", "노태우", "김영삼", "김대중", "노무현", "이명박", "박근혜", "문재인")) korea_plot + ggthemes::theme_fivethirtyeight() + ggtitle("Electoral democracy on Korean Peninsula") + labs(subtitle = "Sources: Teorell et al. (2019) and Curtis (2016)") + xlab("Year") + ylab("Democracy Scores") + theme(plot.title = element_text(face = "bold"), axis.ticks = element_blank(), legend.box.background = element_blank(), legend.title = element_blank(), legend.text = element_text(size = 20), text = element_text(size = 15)) + scale_color_manual(values = korea_palette) + scale_x_continuous(breaks = round(seq(min(korea_reign$year), max(korea_reign$year), by = 5),1))+ geom_segment(data =korea_seg, aes(xend = year, yend =0), color = "#FCB322" ) + geom_label(data = korea_label, aes(x = x, y = y, label = label), label.size = NA, label.padding = unit(0, "lines"), size = 7 )
최근에 대선을 치른 튀르키예와 대한민국의 민주주의 지수를 비교해서 그래프를 그려보았다.
에르도안 대통령의 21년째 독재가 되면서 민주주의 지수가 급격히 나빠지는 모습이 보인다.
728x90반응형'Political Science Analysis' 카테고리의 다른 글
R을 이용한 대한민국 민주주의 점수 변화 (1) 2024.04.06 R을 이용한 대한민국 국회 의석수 시각화 (0) 2023.06.10 댓글