Incidents interestatals
L’objectiu d’aquesta activitat és representar les dades d’un conflicte en un mapa. Les dades que utilitzarem es troben a la pàgina web de Correlates of War (COW), un dels centres de recerca internacionals especialitzat en la investigació de conflictes armats. Per a realitzar l’activitat, necessitem els elements següents:
- Base de dades: Necessitem la informació de conflictes armats sistematitzada en una base de dades. Aquesta base de dades és la Militarized Interstate Disputes (v5.0) (Palmer et al. 2020), que proporciona informació sobre conflictes en els quals un o més estats amenacen, mostren o utilitzen la força contra un o més estats entre 1816 i 2014.
- Coordenades: La localització de cada disputa militaritzada es troba a la base de dades de Militarized Interstate Dispute Locations (v2.1) (Braithwaite 2010; Bezerra and Braithwaite 2019).
- Descripció dels conflictes: Necessitem també informació general, més qualitativa, sobre els conflictes que hi ha hagut al món. Trobarem aquesta informació qualitativa sobre els conflictes de la base de dades als arxius adjunts de la base de dades i al llibre International Conflicts, 1816-2010: Militarized Interstate Dispute Narratives (Gibler 2018), disponible a la biblioteca d’UOC.
- Eines de mapeig: En aquesta activitat crearem un mapa amb l’ajut dels paquet d’R dplyr i ggplot2.
Aquests són els paquets d’R que necessitem carregar per poder desenvolupar correctament l’activitat:
#recordeu que els paquets han d'estar prèviament instal·lats
library(dplyr)
library(readr)
library(ggplot2)
library(ggmap)
La base de dades
La base de dades Militarized Interstate Disputes (v5.0) (Palmer et al. 2020) conté informació detallada sobre conflictes en què un o més estats amenacen, mostren o utilitzen la força contra un o més estats entre 1816 i 2014. Per accedir a la base de dades, haurem de descarregar l’arxiu MID 5 Data and Supporting Materials.zip i descomprimir el zip. Si apliqueu el codi següent, us situarà tots els arxius al directori de treball.
download.file("https://correlatesofwar.org/wp-content/uploads/MID-5-Data-and-Supporting-Materials.zip", "MID5.zip")
unzip("MID5.zip")
De tots els arxius que hem descomprimit, ens interessen de moment els dos arxius .csv on tenim les dades per disputa militaritzada (MIDA 5.0.csv) i per incident (MIDI 5.0.csv).
- Dades per disputa militaritzada: L’arxiu MIDA 5.0.csv conté informació de disputes militaritzades produïdes entre 1816 i 2010. La unitat d’anàlisi és l’inici de la disputa militaritzada.
- Dades per incident de la disputa militaritzada: L’arxiu MIDI 5.0.csv conté informació de disputes militaritzades produïdes entre 1993 i 2010. La unitat d’anàlisi és l’incident de la disputa militaritzada.
Dades per incident
Les dades per disputa militaritzada es troben a l’arxiu MIDA 5.0.csv. A continuació convertim l’arxiu en l’objecte d’R midi
. A la Taula 1 veiem el resultat de teclejar head(midi, 10)
a la consola.
midi <- read_csv("MIDI 5.0.csv") #heu de tenir carregat el paquet readr
head(midi, 10)
dispnum | incidnum | stday | stmon | styear | endday | endmon | endyear | duration | tbi | fatality | fatalpre | action | hostlev | numa | version |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
3551 | 3551010 | 18 | 10 | 1993 | 18 | 10 | 1993 | 1 | -9 | 0 | 0 | 1 | 2 | 1 | 5 |
3551 | 3551002 | 21 | 11 | 1992 | 24 | 9 | 1996 | 1404 | -9 | 0 | 0 | 13 | 4 | 9 | 5 |
3551 | 3551004 | 14 | 1 | 1993 | -9 | 1 | 1993 | -9 | 16 | 0 | 0 | 7 | 3 | 1 | 5 |
3551 | 3551001 | 16 | 7 | 1992 | 16 | 7 | 1992 | 1 | 129 | 0 | 0 | 7 | 3 | 13 | 5 |
3551 | 3551009 | 1 | 5 | 1993 | 1 | 11 | 1993 | 185 | 170 | 0 | 0 | 13 | 4 | 1 | 5 |
3551 | 3551003 | -9 | 1 | 1993 | -9 | 1 | 1993 | -9 | -9 | 0 | 0 | 7 | 3 | 3 | 5 |
3551 | 3551008 | 12 | 4 | 1993 | 12 | 4 | 1993 | 1 | 19 | 0 | 0 | 7 | 3 | 3 | 5 |
3551 | 3551006 | 3 | 2 | 1993 | 3 | 2 | 1993 | 1 | 25 | 0 | 0 | 15 | 4 | 1 | 5 |
3551 | 3551005 | 30 | 1 | 1993 | 30 | 1 | 1993 | 1 | 4 | 0 | 0 | 15 | 4 | 1 | 5 |
3551 | 3551007 | 28 | 2 | 1993 | 28 | 2 | 1993 | 1 | 43 | 0 | 0 | 1 | 2 | 1 | 5 |
Exercici 1: Explora el marc de dades amb head()
i glimpse()
. Si tecleges head(midi)
veuràs les primeres sis observacions i glimpse(midi)
et permetrà veure el marc de dades de forma vertical. Respon a les següents preguntes, ajudant-te també del llibre de codis que trobaràs a dins l’arxiu MID 5.0 Codebook.pdf (pàgines 8-9) que has descomprimit. Consulta com utilitzar un llibre de codis en aquest enllaç)1:
- Quantes observacions i quantes variables té el marc de dades? Quina és la seva unitat d’anàlisi?
- Quines són les variables que ens permeten saber el dia, mes i any que va finalitzar l’incident?
- Fixa’t que en moltes cel·les apareix el valor
-9
. Sabries explicar què significa? - Quantes categories diferents pot tenir una disputa segons la variable
fatality
? Tenim manera d’obtenir les dades de manera més concreta? - Busca al llibre de codis el significat de les variables
tbi
,action
,hostlev
inuma
. - Què significa la variable
dispnum
? Busca al llibre disponible a l’aula International Conflicts, 1816-2010: Militarized Interstate Dispute Narratives (hauràs de buscar-hi el codi de la disputa) la disputa que té com a codi 3551. Descriu-la breument.
Les coordenades
Les coordenades ens indiquen el lloc exacte d’un mapa on hi associarem a determinada informació. Com sabeu, en un mapa del món necessitarem saber la longitud (eix horitzontal) i la latitud (eix vertical). Les coordenades de cada incident les trobem a una altra base de dades de COW, la Militarized Interstate Dispute Locations (v2.1) (Bezerra and Braithwaite 2019). Per descarregar les dades, haurem d’aplicar el codi que se’ns mostra a continuació, on descarreguem l’arxiu MIDLOC_2.1.zip al directori de treball i el descomprimim.
download.file("https://correlatesofwar.org/wp-content/uploads/MIDLOC_2.1.zip", "MIDLOC_2.1.zip")
unzip("MIDLOC_2.1.zip")
Quan obrim l’arxiu zip se’ns ubiquen al nostre directori de treball dos arxius .csv amb dades de geolocalització: MIDLOCA_2.1.csv i MIDLOCI_2.1.csv.
- MIDLOC-A v2.1: Conté informació de disputes militaritzades produïdes entre 1816 i 2010. La unitat d’anàlisi és l’inici de la disputa militaritzada. Per tant, la geolocalització mostra el lloc de l’inici de la disputa, encara que després s’hagin pogut produir incidents en altres llocs.
- MIDLOC-I v2.1: Conté informació de disputes militaritzades produïdes entre 1993 i 2010. La unitat d’anàlisi és l’incident de la disputa militaritzada. Per tant, la geolocalització mostra el lloc de cada incident. Una disputa militaritzada pot tenir varis incidents, entre ells l’incident que va iniciar la disputa.
Si ens interessen les dades per incident de la disputa militaritzada, utilitzarem l’arxiu MIDLOCI_2.1.csv. A continuació convertim l’arxiu en l’objecte d’R midloci
. A la Taula 2 veiem el resultat de teclejar head(midloci)
a la consola.
midloci <- read_csv("MIDLOCI_2.1.csv") #heu de tenir carregat el paquet readr
head(midloci)
year | dispnum | incidnum | midloc2_location | midloc2_measuringpoint | midloc2_xlongitude | midloc2_ylatitude | midloc2_precision | onset | midloc2_howobtained | midloc2_precision_comment | midloc2_general_comment | priogrid_cell | midloc11_location | midloc11_midlocmeasuringpoint | midloc11_latitude | midloc11_longitude | midloc11_precision |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1995 | 4005 | 4005001 | Belonia, India | Belonia, India | 91.4676 | 23.25050 | 1 | 1 | latlong.net | Precise location text | NA | 163263 | Belonia subdivision of South Tripura; banks of Muhari River bordering India and | Belonia | 23.25 | 91.500 | 3 |
1993 | 4023 | 4023001 | NA | Hsinshe | 120.9830 | 24.85000 | 1 | 1 | MIDLOC1.1 | Precise location text | NA | 165482 | NA | hsinshe | 24.85 | 120.983 | 1 |
2000 | 4157 | 4156001 | Corentyne River Mouth | Vassen Island | -57.1492 | 5.79306 | 2 | 1 | Island | NA | NA | 137766 | In the disputed waters at the mouth of the Corentyne River between SUR and GUY. | corentyne river | 5.95 | -57.100 | 4 |
2000 | 4157 | 4156002 | Corentyne River | Midpoint of river | -57.9096 | 3.86172 | 5 | 0 | ArcGIS and Natural Earth Data | Point along a line | NA | 134885 | Villages on the GUY side of the Corentyne River. | corentyne river | 5.95 | -57.100 | 4 |
2000 | 4157 | 4156003 | Corentyne River | Midpoint of river | -57.9096 | 3.86172 | 5 | 0 | ArcGIS and Natural Earth Data | Point along a line | NA | 134885 | Along the Corentyne River which forms the border between GUY and SUR. | corentyne river | 5.95 | -57.100 | 4 |
2000 | 4157 | 4156004 | Guyana-Suriname Border | Midpoint of shared (national) border | -57.8552 | 3.75803 | 5 | 0 | ArcGIS and cShapes | Point along a line | NA | 134885 | Along the border between GUY and SUR. | corentyne river | 5.95 | -57.100 | 4 |
Exercici 2: Examina el marc de dades midloci
mitjançant les funcions head()
i glimpse()
. Si tecleges head(midloci)
veuràs les primeres sis observacions i glimpse(midloci)
et permetrà veure el marc de dades de forma vertical. Respon a les següents preguntes, ajudant-te també del llibre de codis que trobaràs a dins l’arxiu MIDLOCI_2.1 Codebook.pdf que has descomprimit:
- Quina és la unitat d’anàlisi del marc de dades?
- A quines columnes es troben les coordenades?
- Què significa la variable
onset
? - Quin és el significat de la variable
midloc2_precision
? I lamidloc2_precision_comment
?
Descripció dels conflictes
És molt important, al començar aquest apartat, assegurar-se d’haver comprès el significat de la columna dispnum
que hem vist en l’apartat anterior. La descripció de totes les disputes militaritzades de la base de dades Militarized Interstate Disputes es troben en el llibre International Conflicts, 1816-2010: Militarized Interstate Dispute Narratives, disponible a l’aula i a la biblioteca d’UOC. Aquest llibre està organitzat en dues parts:
- Introducció: Conté una definició de disputa militaritzada i informació de com el llibre està organitzat.
- Disputes militaritzades: A partir de la pàgina 4 es descriuen diversos detalls de 2.212 disputes militaritzades entre 1816 i 2010. Fixeu-vos que cada disputa té un codi associat. Per exemple, la primera disputa que apareix a la pàgina 4 és la número 2968, que correspondrà amb
dispnum
de la MID dataset.
Les disputes militaritzades més recents de 1993 també podeu consultar la descripció en tres arxius que es trobarem a dins de l’arxiu MID5.zip: MID_Narratives 1993-2001.pdf, MID_Narratives 2002-2010.pdf i MID Narratives 2011-2014.pdf.
Exercici 3: Fes una ullada al llibre International Conflicts, 1816-2010: Militarized Interstate Dispute Narratives i respon a les següents preguntes:
- Quina és la definició de disputa?
- Què és una narrativa? Què és una díada?
- En el segon apartat del llibre, com estan ordenats els conflictes?
Eines de mapeig
Un cop tenim la informació necessària i les coordenades d’aquesta informació, ara només ens cal ubicar tots els elements en un mapa. En aquesta part farem servir diverses eines de mapeig del programari R:
- El mapa base el crearem amb el paquet ggmap.
- La informació la tractarem amb dplyr i la col·locarem al mapa amb ggplot2.
Mapa base
De moment crearem el mapamundi world_map
que ens permeti visualitzar la distribució de totes les observacions de la base de dades MIDLOC-I segons les seves coordenades. Dins del paquet ggmap2, utilitzarem la funció get_stamenmap()
per accedir als mapes. A dins la funció indicarem:
- Els límits del mapa.
- La resolució amb
zoom
. - El tipus de mapa que volem visualitzar amb
maptype
. Hem escollitterrain-background
com a opció per defecte. Consulteu altres tipus de mapa amb:?get_stamenmap
.
# Amb la funció get_stamenmap creem un mapamundi
world_map <- get_stamenmap(bbox = c(top = 75,
left = -170, right = 170,
bottom = -58),
zoom = 2, #marquem la resolució del mapa
maptype = "terrain-background")
Si voleu visualitzar l’objecte que acabeu de crear només cal que utilitzeu la funció ggmap()
com s’indica a continuació.
ggmap(world_map)
Informació del mapa
Ara ja tenim el mapa, les coordenades i la informació. Només ens queda ajuntar tots aquests elements amb el mapa. Farem una primera prova amb les eines del paquet ggplot2, que ens permeten ubicar les observacions de l’objecte midloci
en el mapa que acabem de crear. Per això, indicarem les coordenades horitzontal (midloc2_xlongitude
) i vertical (midloc2_ylatitude
), així com alguns atributs com ara el color i la transparència dels punts. El resultat és el mapa que observem a la Figura 1.
#Introduïm les dades de midloci al mapamundi
world_map %>% #mapa base
ggmap(base_layer = ggplot(aes(x = midloc2_xlongitude, #quina variable posem a l'eix de les x?
y = midloc2_ylatitude), #quina variable posem a l'eix de les y?
data = midloci)) + #on es troben les coordenades?
geom_point(alpha = 0.3, col = "blue") #definim transparència al 40% i color blau
Exercici 4: Observa el mapa de la Figura 1 i respon a les següents preguntes:
- Quines són les coordenades que marquen els límits esquerre, dret, superior i inferior del mapa?
- On es troben més concentrats els conflictes interestatals?
- A quines zones del món hi ha hagut menys conflictes interestatals?
- Quin país es troba situat a longitud -100 i latitud 25?
- Quina illa es troba situada aproximadament a longitud 50 i latitud -25?
- A quina longitud i latitud es troba aproximadament Espanya?
Visualitzar les disputes militaritzades
A continuació us mostrem un exemple de com visualitzar un o vàris conflictes segons si utilitzem com a unitat d’anàlisi la disputa militaritzada o l’incident de la disputa militaritzada. Si prenem com a unitat d’anàlisi l’incident de la disputa militaritzada utilitzarem el marc de dades midijoin
, que creem a partir dels objectes midi
i midloci
amb el codi que mostrem a continuació. Aquest codi uneix els dos objectes i també recodifica algunes variables que hem tractat anteriorment, com fatality
o hostlev
. Les primeres observacions de midajoin
es mostren a la Taula 3. Fixeu-vos que ara tenim les coordenades i informació de l’incident en un mateix marc de dades.
midijoin <- midi %>%
inner_join(midloci, by = c("incidnum", "dispnum")) %>%
select(dispnum, incidnum, location = midloc2_location, measuringpoint = midloc2_measuringpoint,
lon = midloc2_xlongitude, lat = midloc2_ylatitude,
styear, endyear, duration, tbi, fatalpre, fatality, hostlev, numa) %>%
mutate(fatality = case_when(fatality == 0 ~ "None",
fatality == 1 ~ "1-25",
fatality == 2 ~ "26-100",
fatality == 3 ~ "101-250",
fatality == 4 ~ "251-500",
fatality == 5 ~ "501-999",
fatality == 6 ~ "More than 999",
TRUE ~ "Missing"),
hostlev = case_when(hostlev == 1 ~ "No militarized action",
hostlev == 2 ~ "Threat to use force",
hostlev == 3 ~ "Display of force",
hostlev == 4 ~ "Use of force",
hostlev == 4 ~ "War"))
dispnum | incidnum | location | measuringpoint | lon | lat | styear | endyear | duration | tbi | fatalpre | fatality | hostlev | numa |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
3551 | 3551010 | Unspecified | NA | NA | NA | 1993 | 1993 | 1 | -9 | 0 | None | Threat to use force | 1 |
3551 | 3551002 | Unspecified | NA | NA | NA | 1992 | 1996 | 1404 | -9 | 0 | None | Use of force | 9 |
3551 | 3551004 | Adriatic Sea | Adriatic Sea | 17.2903 | 41.8551 | 1993 | 1993 | -9 | 16 | 0 | None | Display of force | 1 |
3551 | 3551001 | Yugoslavia Territorial Waters | Centroid of territorial waters | 18.9136 | 42.0486 | 1992 | 1992 | 1 | 129 | 0 | None | Display of force | 13 |
3551 | 3551009 | Yugoslavia Territorial Waters | Centroid of territorial waters | 18.9136 | 42.0486 | 1993 | 1993 | 185 | 170 | 0 | None | Use of force | 1 |
3551 | 3551003 | Yugoslavia Territorial Waters | Centroid of territorial waters | 18.9136 | 42.0486 | 1993 | 1993 | -9 | -9 | 0 | None | Display of force | 3 |
3551 | 3551008 | Bosnia | Centroid of ADM0 | 17.7865 | 44.1681 | 1993 | 1993 | 1 | 19 | 0 | None | Display of force | 3 |
3551 | 3551006 | Danube River | Midpoint of river | 20.3259 | 45.0941 | 1993 | 1993 | 1 | 25 | 0 | None | Use of force | 1 |
A continuació creem el mapa midi_map
i ubiquem les disputes del conflicte que té com a número de disputa (dispnum
) 3551. Hem ubicat algunes variables al mapa i hem posat la transparència dels punts (alpha
) a 0.5.
# Amb la funció get_stamenmap creem un mapamundi
midi_map <- get_stamenmap(bbox = c(top = 75,
left = -170, right = 170,
bottom = -58),
zoom = 2, #marquem la resolució del mapa
maptype = "toner-lite")
#Introduïm les dades de midloci al mapamundi
midi_map %>%
ggmap(base_layer = ggplot(aes(x = lon, y = lat,
col = hostlev, size = tbi),
data = filter(midijoin, dispnum == 3551))) +
geom_point(alpha = 0.4)
Crea el teu propi mapa: Modifica el codi anterior per crear el teu propi mapa:
- Tria una disputa militaritzada de la secció Hemisferi Occidental del llibre International Conflicts, 1816-2010: Militarized Interstate Dispute Narratives (Gibler 2018) d’entre les disponibles a la base de dades
midijoin
. Trobaràs les disputes disponibles amb el següent codi:
unique(midijoin$dispnum)
- Escull la variable que representarà el color i la variable que representarà la mida dels punts. Escull també la transparència dels punts.
- Ajusta les coordenades de l’objecte
mida_map
per focalitzar l’atenció a la zona del món on tinguis el conflicte que has seleccionat. Canvia, si ho prefereixes, el tipus de mapa (per exemple, “watercolor” o “toner-hybrid”. Podeu consultar-los tots teclejant?get_stamenmap
). - Fes una descripció del mapa. Ajuda’t de la narrativa que trobaràs al llibre International Conflicts, 1816-2010: Militarized Interstate Dispute Narratives (Gibler 2018), d’altra informació complementària que consideris oportuna i de la informació que tens al llibre de codis i a la base de dades.
Ajuda’t dels codis següents:
- Quins incidents té una disputa concreta?
midijoin %>%
filter(dispnum == 3551) %>% View
- Quants incidents té una disputa concreta?
midijoin %>%
filter(dispnum == 3551) %>%
count()
Bibliografia
Trobaràs més informació metodològica sobre la base de dades al document Incident Coding Manual.pdf, que es troba a dins de l’arxiu MID5.zip↩︎
Per més informació de com utilitzar ggmaps podeu consultar ggmap: Spatial Visualization with ggplot2 (Kahle and Wickham 2013).↩︎