rm(list = ls())
Sys.setenv(LANG = "en")
library(xlsx)
library(readr)
library(readxl)
library(tidyverse)
library(stringr)
library(stringi)
library(gghighlight)
library(countrycode)
library(countries)
library(janitor)
library(sf)
library(janitor)
library(sf)
library(ggthemes)
library(here)
library(viridis)
library(ggplot2)
library(formatR)
library(gtools)
library(nnet)
library(patchwork)
library(ggh4x)
library(plm)
library(broom)
library(ggalluvial)
library(pals)
Load data —————————————————————
Large datasets (move load to different notebook)
aggregates <- read_csv("../aggregated_data/aggregates.csv")
gd_world_or <- read_sf("../aggregated_data/TM_WORLD_BORDERS-0.3")
Figure 2A. Map
gd_world <- gd_world_or %>%
select(ISO3, LON, LAT) %>%
filter(ISO3 != "ATA")
corpus_shape_sel <- left_join(aggregates, gd_world, by = join_by(ISO3))
(map_repr_s <- corpus_shape_sel %>%
ggplot(aes(geometry = geometry)) +
geom_sf(aes()) +
coord_sf(datum = NA) +
geom_sf(aes(fill = repr_s)) +
theme_map() +
theme(legend.title = element_text(size = 10),
legend.text = element_text(size = 9),
legend.position = "bottom",
plot.title = element_text(hjust = 0.5, size = 14),
plot.subtitle = element_text(hjust = 0.5, size = 12)) +
labs(fill = "Research representation index") +
scale_fill_manual(values = c("#d1bfa3", "#6baed6", "#e34a33"), na.value = "gray"))
ggsave("../output_figures/map_repr_s.png", width = 50, height = 25, units = "cm", dpi = 300, scale = 1, plot = last_plot())

p_legend <- aggregates %>%
ggplot(aes(x = log(emig_immig), y = log(art_country))) +
geom_point(aes(color = repr_s), alpha = .6) +
scale_color_manual(values = c("#d1bfa3", "#6baed6", "#e34a33"), na.value = "gray") +
labs(color = "Research representation") +
theme_minimal() +
theme(
legend.title = element_text(size = 10),
legend.text = element_text(size = 9),
legend.key.size = unit(0.6, "lines"),
legend.spacing = unit(0.3, "lines"),
legend.box.spacing = unit(0.3, "lines"),
legend.background = element_blank(),
legend.box.background = element_blank())
only_legend <- cowplot::get_legend(p_legend)
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpgYGB7cn0NCnJtKGxpc3QgPSBscygpKQ0KDQpTeXMuc2V0ZW52KExBTkcgPSAiZW4iKQ0KbGlicmFyeSh4bHN4KQ0KbGlicmFyeShyZWFkcikNCmxpYnJhcnkocmVhZHhsKQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpsaWJyYXJ5KHN0cmluZ3IpDQpsaWJyYXJ5KHN0cmluZ2kpDQpsaWJyYXJ5KGdnaGlnaGxpZ2h0KQ0KbGlicmFyeShjb3VudHJ5Y29kZSkNCmxpYnJhcnkoY291bnRyaWVzKQ0KbGlicmFyeShqYW5pdG9yKQ0KbGlicmFyeShzZikNCg0KbGlicmFyeShqYW5pdG9yKQ0KbGlicmFyeShzZikNCmxpYnJhcnkoZ2d0aGVtZXMpDQpsaWJyYXJ5KGhlcmUpDQpsaWJyYXJ5KHZpcmlkaXMpDQpsaWJyYXJ5KGdncGxvdDIpDQpsaWJyYXJ5KGZvcm1hdFIpDQpsaWJyYXJ5KGd0b29scykNCmxpYnJhcnkobm5ldCkgDQpsaWJyYXJ5KHBhdGNod29yaykNCmxpYnJhcnkoZ2doNHgpDQoNCmxpYnJhcnkocGxtKQ0KbGlicmFyeShicm9vbSkNCmxpYnJhcnkoZ2dhbGx1dmlhbCkNCg0KbGlicmFyeShwYWxzKQ0KYGBgDQoNCiMgTG9hZCBkYXRhIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQojIyBMYXJnZSBkYXRhc2V0cyAobW92ZSBsb2FkIHRvIGRpZmZlcmVudCBub3RlYm9vaykNCg0KYGBge3J9DQphZ2dyZWdhdGVzIDwtIHJlYWRfY3N2KCIuLi9hZ2dyZWdhdGVkX2RhdGEvYWdncmVnYXRlcy5jc3YiKQ0KZ2Rfd29ybGRfb3IgPC0gcmVhZF9zZigiLi4vYWdncmVnYXRlZF9kYXRhL1RNX1dPUkxEX0JPUkRFUlMtMC4zIikNCmBgYA0KIyBGaWd1cmUgMkEuIE1hcA0KDQpgYGB7cn0NCmdkX3dvcmxkIDwtIGdkX3dvcmxkX29yICU+JQ0KICBzZWxlY3QoSVNPMywgTE9OLCBMQVQpICU+JSANCiAgZmlsdGVyKElTTzMgIT0gIkFUQSIpDQoNCmNvcnB1c19zaGFwZV9zZWwgPC0gbGVmdF9qb2luKGFnZ3JlZ2F0ZXMsIGdkX3dvcmxkLCBieSA9IGpvaW5fYnkoSVNPMykpDQpgYGANCg0KYGBge3J9DQoobWFwX3JlcHJfcyA8LSBjb3JwdXNfc2hhcGVfc2VsICU+JSANCiAgICBnZ3Bsb3QoYWVzKGdlb21ldHJ5ID0gZ2VvbWV0cnkpKSArDQogICAgZ2VvbV9zZihhZXMoKSkgKw0KICAgIGNvb3JkX3NmKGRhdHVtID0gTkEpICsgDQogICAgZ2VvbV9zZihhZXMoZmlsbCA9IHJlcHJfcykpICsNCiAgICB0aGVtZV9tYXAoKSArDQogICAgdGhlbWUobGVnZW5kLnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMCksDQogICAgICAgICAgbGVnZW5kLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpLA0KICAgICAgICAgIGxlZ2VuZC5wb3NpdGlvbiA9ICJib3R0b20iLA0KICAgICAgICAgIHBsb3QudGl0bGUgPSBlbGVtZW50X3RleHQoaGp1c3QgPSAwLjUsIHNpemUgPSAxNCksDQogICAgICAgICAgcGxvdC5zdWJ0aXRsZSA9IGVsZW1lbnRfdGV4dChoanVzdCA9IDAuNSwgc2l6ZSA9IDEyKSkgKw0KICAgbGFicyhmaWxsID0gIlJlc2VhcmNoIHJlcHJlc2VudGF0aW9uIGluZGV4IikgKw0KICAgIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IGMoIiNkMWJmYTMiLCAiIzZiYWVkNiIsICIjZTM0YTMzIiksIG5hLnZhbHVlID0gImdyYXkiKSkNCmBgYA0KDQpgYGB7cn0NCnBfbGVnZW5kIDwtIGFnZ3JlZ2F0ZXMgJT4lIA0KICAgIGdncGxvdChhZXMoeCA9IGxvZyhlbWlnX2ltbWlnKSwgeSA9IGxvZyhhcnRfY291bnRyeSkpKSArDQogICAgZ2VvbV9wb2ludChhZXMoY29sb3IgPSByZXByX3MpLCBhbHBoYSA9IC42KSArDQogICAgc2NhbGVfY29sb3JfbWFudWFsKHZhbHVlcyA9IGMoIiNkMWJmYTMiLCAiIzZiYWVkNiIsICIjZTM0YTMzIiksIG5hLnZhbHVlID0gImdyYXkiKSArDQogICAgbGFicyhjb2xvciA9ICJSZXNlYXJjaCByZXByZXNlbnRhdGlvbiIpICsNCiAgICB0aGVtZV9taW5pbWFsKCkgKw0KICAgIHRoZW1lKA0KICAgICAgbGVnZW5kLnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMCksDQogICAgICBsZWdlbmQudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplID0gOSksDQogICAgICBsZWdlbmQua2V5LnNpemUgPSB1bml0KDAuNiwgImxpbmVzIiksDQogICAgICBsZWdlbmQuc3BhY2luZyA9IHVuaXQoMC4zLCAibGluZXMiKSwNCiAgICAgIGxlZ2VuZC5ib3guc3BhY2luZyA9IHVuaXQoMC4zLCAibGluZXMiKSwNCiAgICAgIGxlZ2VuZC5iYWNrZ3JvdW5kID0gZWxlbWVudF9ibGFuaygpLA0KICAgICAgbGVnZW5kLmJveC5iYWNrZ3JvdW5kID0gZWxlbWVudF9ibGFuaygpKQ0KDQpvbmx5X2xlZ2VuZCA8LSBjb3dwbG90OjpnZXRfbGVnZW5kKHBfbGVnZW5kKQ0KDQpgYGANCiMgRmlndXJlIDJCLiBTY2F0dGVyDQoNCiMjIFdvcmxkIGFuZCBzdWJyZWdpb25zDQpgYGB7cn0NCihzY2F0X3Bsb3QgPC0gYWdncmVnYXRlcyAlPiUgDQogICAgZmlsdGVyKCFpcy5uYShyZXByX3MpLCBtaWdfcmVsX2luZGV4IDw9IDEwMCkgJT4lIA0KICAgIGdncGxvdChhZXMoeCA9IGxvZyhlbWlnX2ltbWlnKSwgeSA9IGxvZyhhcnRfY291bnRyeSkpKSArDQogICAgZ2VvbV9wb2ludChhZXMoY29sb3IgPSByZXByX3MpLCBhbHBoYSA9IC42KSArDQogICAgc2NhbGVfY29sb3JfbWFudWFsKHZhbHVlcyA9IGMoIiNkMWJmYTMiLCAiIzZiYWVkNiIsICIjZTM0YTMzIikpICsNCiAgICBsYWJzKGNvbG9yID0gIlJlc2VhcmNoIHJlcHJlc2VudGF0aW9uIiwNCiAgICAgICAgIHNpemUgPSAiUmVsYXRpdmUgbWlncmF0aW9uIGluZGV4IiwNCiAgICAgICAgIHggPSAiSW1taWdyYXRpb24gKyBlbWlncmF0aW9uIHN0b2NrIChsb2cpIiwNCiAgICAgICAgIHkgPSAiUmVzZWFyY2ggc2FsaWVuY2UgKGxvZykiKSArIA0KICB0aGVtZV9taW5pbWFsKCkgKw0KICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSAiYm90dG9tIiwNCiAgICAgICAgbGVnZW5kLnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMCkpKQ0KYGBgDQoNCiMjIENvbnRpbmVudHMuIFNlbGVjdGVkIHZlcnNpb24NCmBgYHtyfQ0KZGVzaWduID0gIg0KI0ENCkJDDQpERQ0KIg0KDQooc2NhdHRlcl9jb250aW5lbnRzX3JlcHJfcyA8LSBzY2F0X3Bsb3QgKyANCiAgZ2VvbV90ZXh0KGRhdGEgPSBzdWJzZXQoYWdncmVnYXRlcywgcmVwcl9zID09ICJVbmRlciIgJiBjb250aW5lbnQgIT0gIkV1cm9wZSIpLA0KICAgICAgICAgICAgYWVzKHggPSBsb2coZW1pZ19pbW1pZyksIHkgPSBsb2coYXJ0X2NvdW50cnkpLCBsYWJlbCA9IElTTzMpLA0KICAgICAgICAgICAgc2l6ZSA9IDMuNSwgY2hlY2tfb3ZlcmxhcCA9IFQpICsNCiAgICBnZW9tX3RleHQoZGF0YSA9IHN1YnNldChhZ2dyZWdhdGVzLCByZXByX3MgPT0gIlVuZGVyIiAmIGNvbnRpbmVudCA9PSAiRXVyb3BlIiksDQogICAgICAgICAgICBhZXMoeCA9IGxvZyhlbWlnX2ltbWlnKSwgeSA9IGxvZyhhcnRfY291bnRyeSksIGxhYmVsID0gSVNPMyksDQogICAgICAgICAgICBzaXplID0gMywgY2hlY2tfb3ZlcmxhcCA9IFQpICsNCiAgICBnZW9tX3RleHQoZGF0YSA9IHN1YnNldChhZ2dyZWdhdGVzLCBJU08zID09ICJVU0EiKSwNCiAgICAgICAgICAgICAgYWVzKHggPSBsb2coZW1pZ19pbW1pZyksIHkgPSBsb2coYXJ0X2NvdW50cnkpLCBsYWJlbCA9IElTTzMpLA0KICAgICAgICAgICAgICBzaXplID0gMy41LCBjaGVja19vdmVybGFwID0gVCkgKw0KICBnZ2g0eDo6ZmFjZXRfbWFudWFsKH5jb250aW5lbnQsIGRlc2lnbiA9IGRlc2lnbikpIA0KYGBgDQoNCiMgQ29tYmluZSBmaWd1cmVzIDJBIGFuZCAyQg0KYGBge3J9DQojIFJlbW92ZSBsZWdlbmQgYmVmb3JlIGNvbWJpbmluZyBwbG90cy4NCihtYXBfcmVwcl9zX25ldyA8LSBtYXBfcmVwcl9zICsgdGhlbWUobGVnZW5kLnBvc2l0aW9uID0gIm5vbmUiKSkNCg0Kc2NhdHRlcl9jb250aW5lbnRzX3JlcHJfcyA8LSBzY2F0dGVyX2NvbnRpbmVudHNfcmVwcl9zICsgdGhlbWUobGVnZW5kLnBvc2l0aW9uID0gIm5vbmUiKQ0KDQpjb21iaW5lZF9tYXBfc2NhdHRlciA8LSBtYXBfcmVwcl9zX25ldyAvIHNjYXR0ZXJfY29udGluZW50c19yZXByX3MNCg0KY29tYmluZWRfbWFwX3NjYXR0ZXIgKyANCiAgaW5zZXRfZWxlbWVudCgNCiAgICBvbmx5X2xlZ2VuZCwNCiAgICBsZWZ0ID0gMC4wMiwgYm90dG9tID0gMC45LCByaWdodCA9IDAuMiwgdG9wID0gLjksIA0KICAgIGFsaWduX3RvID0gJ3BhbmVsJw0KICApDQoNCmdnc2F2ZSgiLi4vb3V0cHV0X2ZpZ3VyZXMvZmlndXJlXzIucG5nIiwgd2lkdGggPSA1MCwgaGVpZ2h0ID0gMjUsIHVuaXRzID0gImNtIiwgZHBpID0gNTAwLCBzY2FsZSA9IDEsIHBsb3QgPSBsYXN0X3Bsb3QoKSkNCmBgYA0KDQojIEFwcGVuZGl4DQoNCiMjIEZpZ3VyZSBTMi4gUmVsYXRpdmUgbWlncmF0aW9uLg0KYGBge3J9DQpkZXNpZ24gPSAiDQojQQ0KQkMNCkRFDQoiDQoNCihzY2F0X3Bsb3RfcmVsIDwtIGFnZ3JlZ2F0ZXMgJT4lIA0KICAgIGZpbHRlcighaXMubmEocmVwcl9yZWxfcykpICU+JSANCiAgICBnZ3Bsb3QoYWVzKHggPSBsb2cobWlnX3JlbF9pbmRleCksIHkgPSBsb2coYXJ0X2NvdW50cnkpKSkgKw0KICAgIGdlb21fcG9pbnQoYWVzKGNvbG9yID0gcmVwcl9yZWxfcykpICsNCiAgIGdlb21fdGV4dChkYXRhID0gc3Vic2V0KGFnZ3JlZ2F0ZXMsIHJlcHJfcmVsX3MgPT0gIlVuZGVyIiksDQogICAgICAgICAgICBhZXMoeCA9IGxvZyhtaWdfcmVsX2luZGV4KSwgeSA9IGxvZyhhcnRfY291bnRyeSksIGxhYmVsID0gSVNPMyksDQogICAgICAgICAgICBjaGVja19vdmVybGFwID0gVCkgKw0KICAgIHNjYWxlX2NvbG9yX21hbnVhbCh2YWx1ZXMgPSBjKCIjZjBlNmQyIiwgIiM2YmFlZDYiLCAiI2UzNGEzMyIpKSArDQogICAgbGFicyhjb2xvciA9ICJSZXNlYXJjaCByZXByZXNlbnRhdGlvbiIsDQogICAgICAgICB4ID0gIlJlbGF0aXZlIGltbWlncmF0aW9uICsgZW1pZ3JhdGlvbiAobG9nKSIsDQogICAgICAgICB5ID0gIlJlc2VhcmNoIHNhbGllbmNlIChsb2cpIikgKyANCiAgICB0aGVtZV9taW5pbWFsKCkgKw0KICAgIHRoZW1lKGxlZ2VuZC5wb3NpdGlvbiA9IGMoMC4yLCAwLjkpKSArDQogIGdnaDR4OjpmYWNldF9tYW51YWwofmNvbnRpbmVudCwgZGVzaWduID0gZGVzaWduKSkgDQoNCmdnc2F2ZSgiLi4vb3V0cHV0X2ZpZ3VyZXMvZmlndXJlX1MyX3NjYXR0ZXJfY29udGluZW50c19yZXByX3JlbF9zLnBuZyIsIHBsb3QgPSBsYXN0X3Bsb3QoKSkNCmBgYA0KDQoNCg0KDQoNCg0KDQoNCg0K