Vorbemerkungen

Dieses Dokument beschreibt die Vorprozessierung und explorative Analyse des Datensatzes, der Grundlage der beiden auf srf.ch veröffentlichten Artikel Schweizer Rüstungsexporte: Sind die fetten Jahre vorbei? und Sieben Infografiken zu Waffen-Exporten aus der Schweiz ist.

SRF Data legt Wert darauf, dass die Datenvorprozessierung und -Analyse nachvollzogen und überprüft werden kann. SRF Data glaubt an das Prinzip offener Daten, aber auch offener und nachvollziehbarer Methoden. Zum anderen soll es Dritten ermöglicht werden, auf dieser Vorarbeit aufzubauen und damit weitere Auswertungen oder Applikationen zu generieren.

Die Vorprozessierung und Analyse wurde im Statistikprogramm R vorgenommen. Die Endprodukte des verwendeten Scripts sind:

R-Script & Daten

Das zugrunde liegende Script sowie die prozessierten Daten können unter diesem Link heruntergeladen werden. Durch Ausführen von preprocessing.Rmd kann der hier beschriebene Prozess nachvollzogen und dieses Dokument generiert werden. Dabei werden Daten aus dem Ordner input eingelesen und Ergebnisse in den Ordner output geschrieben.

GitHub

Der Code für die vorliegende Datenprozessierung ist auf http://github.com/srfdata/2017-02-kriegsmaterial zur freien Verwendung verfügbar.

Weitere Projekte

Code & Daten von SRF Data sind unter http://srfdata.github.io verfügbar.

Haftungsausschluss

Die veröffentlichten Informationen sind sorgfältig zusammengestellt, erheben aber keinen Anspruch auf Aktualität, Vollständigkeit oder Richtigkeit. Es wird keine Haftung übernommen für Schäden, die durch die Verwendung dieses Scripts oder der daraus gezogenen Informationen entstehen. Dies gilt ebenfalls für Inhalte Dritter, die über dieses Angebot zugänglich sind.

Datenbeschreibung export.csv

Attribut Typ Beschreibung
Land String Land, in das die Güter exportiert werden.
Jahr Integer Jahr, in dem die Güter exportiert wurden.
Kategorie String Kategorie der ausgeführten Güter, siehe unten.
Wert Integer Wert der Güter in Schweizer Franken.

Originalquelle

Alle Originalstatistiken seit 2000 sind auf der Website des SECO abrufbar.

Es wurde jeweils die Datei “Ausfuhren nach Kategorie pro Endempfängerstaat” verwendet.

Vom SECO wurden SRF Data, wo vorhanden, Excel-Dateien zur Verfügung gestellt. Wo nicht, wurden die vorhandenen PDF-Dateien in einem mehrstufigen Prozess maschinenlesbar gemacht und darauf in die Ursprungsdatei input/2000-2016.xlsx überführt.

Was steht hinter den Kategoriekürzeln?

Kürzel Beschreibung
KM1 Hand- und Faustfeuerwaffen jeglichen Kalibers
KM2 Waffen jeglichen Kalibers (jedoch ohne Hand- und Faustfeuerwaffen soweit hievor in KM 1 erfasst)
KM3 Munition für die in KM 1, 2 oder 12 erfassten Waffen
KM4 Bomben, Torpedos, Raketen, Flugkörper
KM5 Feuerleiteinrichtungen
KM6 Panzer- und andere Landfahrzeuge
KM7 Tränengase u.a. Reizstoffe
KM8 Militärische Explosiv-, Brenn- und Treibstoffe
KM10 Bemannte und unbemannte Luftfahrzeuge inkl. entsprechende Triebwerke
KM16 Schmiedestücke, Gussstücke und andere unfertige Erzeugnisse
Andere KM9, KM11-KM15, KM17-KM22, Kryogenische (Tieftemperatur-) und supraleitende Ausrüstung (KM20), ansonsten Software, Strahlenwaffen, Kriegsschiffe…

Vorbereitungen

Packages installieren

if(!require(dplyr)) {
  install.packages("dplyr", repos="http://cran.us.r-project.org")
  require(dplyr)
}
if(!require(tidyr)) {
  install.packages("tidyr", repos="http://cran.us.r-project.org")
  require(tidyr)
}
if(!require(ggplot2)) {
  install.packages("ggplot2", repos="http://cran.us.r-project.org")
  require(ggplot2)
}
if(!require(readxl)) {
  devtools::install_github("hadley/readxl")
  require(readxl)
}
if(!require(stringr)) {
  install.packages("stringr", repos="http://cran.us.r-project.org")
  require(stringr)
}
if(!require(scales)) {
  install.packages("scales", repos="http://cran.us.r-project.org")
  require(scales)
}
if(!require(grid)) {
  install.packages("grid", repos="http://cran.us.r-project.org")
  require(grid)
}
if(!require(reshape)) {
  install.packages("reshape", repos="http://cran.us.r-project.org")
  require(reshape)
}

Vorprozessierung

Daten reinladen und typisieren

# 2000 - 2016

#setwd("/Users/MarieLou/SRF/1601-arms-exports/preprocessing")

# Alle Exceltabellen liegen aufsteigend in einer Arbeitsmappe, so dass sheet1 = 2000, sheet2 = 2001 usw
# lade alle sheets der Arbeitsmappe als data frames in eine Liste sheets
sheets <- list()
for(i in 1:17){
 sheets[[i]] <- read_excel("input/2000-2016.xlsx", sheet = i)
 k <- c(2000:2016)
 sheets[[i]]$Jahr <- k[i]
}
# Liste "sheets" enthält nun einzelne data frames, wobei sheets[[1]]= 2000, sheets[[2]]= 2001 usw. 

# einzelne dataframes zu einem einzigen frame mergen und durch leere Spalten in den Ausgangsdaten erzeugte NA's durch Nullen ersetzen
export <- do.call(rbind.data.frame, sheets)
export[is.na(export)] <- 0
rm(sheets, i ,k)

Restrukturieren

# # Daten kondensieren (breit nach lang)
export_restructured <- export %>% 
  as.data.frame() %>% 
  tidyr::gather(key = "variable", value = "value", 2:12)
rm(export)

Länder-Duplikate entfernen

Wie viele Länder gibt es?

laender <- arrange(export_restructured, Land) # nach Ländernamen sortieren
unique(laender$Land) # vorkommende Ländernamen anzeigen: gibt es Duplikate
  [1] "Aegypten"                       "Aegypten / Egypte"             
  [3] "Ägypten"                        "Algerien"                      
  [5] "Andorra"                        "Andorra "                      
  [7] "Antillen, Niederl."             "Arab. Emirate / Emirats Arabes"
  [9] "Arabische Emirate"              "Argentinien"                   
 [11] "Argentinien / Argentine"        "Australien"                    
 [13] "Australien / Australie"         "Bahrain"                       
 [15] "Bahrein"                        "Bahrein / Bahrein"             
 [17] "Bangladesch"                    "Bangladesh"                    
 [19] "Barbados"                       "Belgien"                       
 [21] "Belgien "                       "Belgien / Belgique"            
 [23] "Belize"                         "Benin"                         
 [25] "Benin "                         "Benin /Benin"                  
 [27] "Benin / Bénin"                  "Bermuda"                       
 [29] "Bosnien"                        "Bosnien / Bosnie"              
 [31] "Bosnien und Herzeg."            "Botswana"                      
 [33] "Botswana / Botswana"            "Botwana"                       
 [35] "Brasilien"                      "Brasilien / Brésil"            
 [37] "Brunei"                         "Brunei /Brunei"                
 [39] "Brunel"                         "Bulgarien"                     
 [41] "Bulgarien / Bulgaarie"          "Bulgarien / Bulgarie"          
 [43] "Burkina Fasso / Burkina Faso"   "Burkin Fasso"                  
 [45] "Buthan / Bouthan"               "Chile"                         
 [47] "Chile / Chili"                  "China"                         
 [49] "Costa Rica"                     "Costa Rica / Costa Rica"       
 [51] "Dänemark"                       "Dänemark / Danemark"           
 [53] "Deutschland"                    "Deutschland / Allemagne"       
 [55] "Dominica"                       "Dominikanische Republik"       
 [57] "Dominika Rep."                  "Dom Rep"                       
 [59] "Dom. Rep. / Rep Dom."           "Ecuador"                       
 [61] "Ecuador "                       "Elfenbeinküste"                
 [63] "Elfenbeinküste\r\n"             "El Salvador"                   
 [65] "Estland"                        "Estland / Estonie"             
 [67] "Finnland"                       "Finnland / Finlande"           
 [69] "Finnnland "                     "Finnnland / Finiande"          
 [71] "Frankreich"                     "Frankreich "                   
 [73] "Frankreich / France"            "Franz Polynesien"              
 [75] "Gabun"                          "Georgien"                      
 [77] "Ghana"                          "Gossbritannien"                
 [79] "Gr. Britannien / Royaume Uni"   "Griechenland"                  
 [81] "Griechenland / Grece"           "Griechenland / Grèce"          
 [83] "Grossbritannien"                "Guinea"                        
 [85] "Guinea-Bissau"                  "Heiliger Stuhl"                
 [87] "Honduras"                       "Hongkong"                      
 [89] "Hong-Kong"                      "Hongkong / Hong Kong"          
 [91] "Indien"                         "Indien / Inde"                 
 [93] "Indonesien"                     "Indonesien / Indonesie"        
 [95] "Indonesien / Indonésie"         "Irland"                        
 [97] "Irland / Irlande"               "Island"                        
 [99] "Island "                        "Island / Islande"              
[101] "Israel"                         "Italien"                       
[103] "Italien / Italie"               "Japan"                         
[105] "Japan /Japon"                   "Jordanien"                     
[107] "Jordanien / Jordanie"           "Kamerun"                       
[109] "Kamerun "                       "Kamerun / Cameroune"           
[111] "Kanada"                         "Kanada "                       
[113] "Kanada / Canada"                "Kap Verde"                     
[115] "Kasachstan"                     "Kasachstan / Kzakhstan"        
[117] "Katar"                          "Kenia"                         
[119] "Kenia / Kenya"                  "Kirgistan / Kirghistan"        
[121] "Kolumbien"                      "Korea (Süd)"                   
[123] "Korea (Süd) "                   "Korea (Süd) / Corée du Sud"    
[125] "Korea (Süd) / Corte du Sud"     "Kosovo"                        
[127] "Kroatien"                       "Kroatien / Croatie"            
[129] "Kuwait"                         "Kuwait "                       
[131] "Kuwait / Kowe'it"               "Kuwait / Koweït"               
[133] "Lebanon"                        "Lettland"                      
[135] "Lettland "                      "Lettland / Letonie"            
[137] "Libanon"                        "Libanon / Liban"               
[139] "Libyen / Libye"                 "Litauen"                       
[141] "Litauen / Lituanie"             "Luxemburg"                     
[143] "Luxemburg / Luxembourg"         "Macao"                         
[145] "Macau"                          "Macau / Macau"                 
[147] "Madagascar"                     "Malawi"                        
[149] "Malaysia"                       "Malaysia / Malaisie"           
[151] "Mali"                           "Malta"                         
[153] "Malta / Malte"                  "Mauretanien"                   
[155] "Mazedonien"                     "Mexiko"                        
[157] "Mongolei"                       "Montenegro"                    
[159] "Namibia"                        "Namibia / Namibie"             
[161] "Neuseeland"                     "Neuseeland / Nouvelle Zélande" 
[163] "Neuseeland / Nvl. Zelande"      "Niederlande"                   
[165] "Niederlände"                    "Niederlande / Pays-Bas"        
[167] "Niederlände / Pays-Bas"         "Niger"                         
[169] "Niger / Niger"                  "Norwegen"                      
[171] "Norwegen / Norvege"             "Norwegen / Norvège"            
[173] "Oman"                           "Oman / Oman"                   
[175] "Österreich"                     "Österreich / Autriche"         
[177] "Pakistan"                       "Pakistan / Pakistan"           
[179] "Panama"                         "Paraguay"                      
[181] "Peru"                           "Peru / Pérou"                  
[183] "Philippinen"                    "Philippinen / Philipinnes"     
[185] "Polen"                          "Polen / Pologne"               
[187] "Portugal"                       "Portugal / Portugal"           
[189] "Rumänien"                       "Rumänien / Roumanie"           
[191] "Russland"                       "Russland / Russie"             
[193] "Salvador"                       "Sambia"                        
[195] "San Marino"                     "San Marino / St Marin"         
[197] "Saudi Arabien"                  "Saudi Arabien "                
[199] "Saudi-Arabien"                  "Saudi Arabien / Arab. Saoudite"
[201] "Saudi Arabien /Arab. Saoudite"  "Schweden"                      
[203] "Schweden / Suade"               "Schweden / Suède"              
[205] "Senegal"                        "Serbien"                       
[207] "Seychellen"                     "Singapur"                      
[209] "Singapur / Singapour"           "Slowakai"                      
[211] "Slowakai / Slovaquie"           "Slowakei"                      
[213] "Slowenien"                      "Slowenien / Slovenie"          
[215] "Spanien"                        "Spanien / Espagne"             
[217] "Südafrika"                      "Südafrika / Afrique du Sud"    
[219] "Sudan"                          "Süd Korea"                     
[221] "Surinam"                        "Tansania"                      
[223] "Thailand"                       "Thailand / Thailande"          
[225] "Trinidad Tobago"                "Tschechien"                    
[227] "Tschechien / Rep. Tcheque"      "Tschechien / Rép. Tchèque"     
[229] "Tschechische Rep."              "Tunesien"                      
[231] "Tunesien / Tunisie"             "Türkei"                        
[233] "Türkei "                        "Türkei / Turquie"              
[235] "Turkmenistan"                   "Uganda"                        
[237] "Ukraine"                        "Ungarn"                        
[239] "Ungarn / Hongrie"               "Uruguay"                       
[241] "Uruguay / Uruguay"              "USA"                           
[243] "U.S.A"                          "USA "                          
[245] "USA / Etats-Unis"               "Venezuela"                     
[247] "Vietnam"                        "Zypern"                        
[249] "Zypern / Chypre"               
length(unique(laender$Land)) # wie viele Länder gibt es insgesamt (mit Duplikaten)?
[1] 249

Manuell umschreiben

export_restructured$Land[export_restructured$Land == "Aegypten / Egypte"|export_restructured$Land == "Aegypten"] <- "Ägypten"
export_restructured$Land[export_restructured$Land == "Andorra "] <- "Andorra"
export_restructured$Land[export_restructured$Land == "Arab. Emirate / Emirats Arabes"|export_restructured$Land == "Arabische Emirate"] <- "Vereinigte Arabische Emirate"
export_restructured$Land[export_restructured$Land == "Argentinien / Argentine"] <- "Argentinien"
export_restructured$Land[export_restructured$Land == "Australien / Australie"] <- "Australien"
export_restructured$Land[export_restructured$Land == "Bahrein"|export_restructured$Land =="Bahrein / Bahrein"] <- "Bahrain"
export_restructured$Land[export_restructured$Land == "Belgien "|export_restructured$Land =="Belgien / Belgique"] <- "Belgien"
export_restructured$Land[export_restructured$Land == "Benin "|export_restructured$Land == "Benin /Benin"|export_restructured$Land == "Benin / Bénin"] <- "Benin"
export_restructured$Land[export_restructured$Land == "Bosnien / Bosnie"|export_restructured$Land == "Bosnien"|export_restructured$Land == "Bosnien und Herzeg."] <- "Bosnien-Herzegowina"
export_restructured$Land[export_restructured$Land == "Botswana / Botswana"|export_restructured$Land == "Botwana"] <- "Botswana"
export_restructured$Land[export_restructured$Land == "Brasilien / Brésil"] <- "Brasilien"
export_restructured$Land[export_restructured$Land == "Bangladesh"] <- "Bangladesch"
export_restructured$Land[export_restructured$Land == "Brunei /Brunei"|export_restructured$Land == "Brunel"] <- "Brunei"
export_restructured$Land[export_restructured$Land == "Bulgarien / Bulgaarie"|export_restructured$Land == "Bulgarien / Bulgarie"] <- "Bulgarien"
export_restructured$Land[export_restructured$Land == "Burkina Fasso / Burkina Faso"|export_restructured$Land == "Burkin Fasso"|export_restructured$Land == "Burkina Fasso"] <- "Burkina Faso"
export_restructured$Land[export_restructured$Land == "Buthan / Bouthan"|export_restructured$Land =="Buthan"] <- "Bhutan"
export_restructured$Land[export_restructured$Land == "Chile / Chili"] <- "Chile"
export_restructured$Land[export_restructured$Land == "Costa Rica / Costa Rica"] <- "Costa Rica"
export_restructured$Land[export_restructured$Land == "Dänemark / Danemark"] <- "Dänemark"
export_restructured$Land[export_restructured$Land == "Deutschland / Allemagne"] <- "Deutschland"
export_restructured$Land[export_restructured$Land == "Dom. Rep. / Rep Dom."|export_restructured$Land == "Dom Rep"|export_restructured$Land == "Dominika Rep."] <- "Dominikanische Republik"
export_restructured$Land[export_restructured$Land == "Elfenbeinküste\r\n"] <- "Elfenbeinküste"
export_restructured$Land[export_restructured$Land == "Estland / Estonie"] <- "Estland"
export_restructured$Land[export_restructured$Land == "Finnland / Finlande"|export_restructured$Land == "Finnnland "|export_restructured$Land == "Finnnland / Finiande"] <- "Finnland"
export_restructured$Land[export_restructured$Land == "Frankreich "|export_restructured$Land == "Frankreich / France"] <- "Frankreich"
export_restructured$Land[export_restructured$Land == "Franz Polynesien"] <- "Französisch-Polynesien"
export_restructured$Land[export_restructured$Land == "Großbritannien"|export_restructured$Land == "Gossbritannien"|export_restructured$Land == "Gr. Britannien / Royaume Uni"] <- "Grossbritannien"
export_restructured$Land[export_restructured$Land == "Griechenland / Grece"|export_restructured$Land == "Griechenland / Grèce"] <- "Griechenland"
export_restructured$Land[export_restructured$Land == "Hongkong"|export_restructured$Land == "Hongkong / Hong Kong"] <- "Hong-Kong"
export_restructured$Land[export_restructured$Land == "Indien / Inde"] <- "Indien"
export_restructured$Land[export_restructured$Land == "Indonesien / Indonésie"|export_restructured$Land == "Indonesien / Indonesie"] <- "Indonesien"
export_restructured$Land[export_restructured$Land == "Irland / Irlande"] <- "Irland"
export_restructured$Land[export_restructured$Land == "Island "|export_restructured$Land == "Island / Islande"] <- "Island"
export_restructured$Land[export_restructured$Land == "Italien / Italie"] <- "Italien"
export_restructured$Land[export_restructured$Land == "Japan /Japon"] <- "Japan"
export_restructured$Land[export_restructured$Land == "Jordanien / Jordanie"] <- "Jordanien"
export_restructured$Land[export_restructured$Land == "Kamerun "|export_restructured$Land == "Kamerun / Cameroune"] <- "Kamerun"
export_restructured$Land[export_restructured$Land == "Kanada / Canada"|export_restructured$Land == "Kanada "] <- "Kanada"
export_restructured$Land[export_restructured$Land == "Kasachstan / Kzakhstan"] <- "Kasachstan"
export_restructured$Land[export_restructured$Land == "Kenia / Kenya"] <- "Kenia"
export_restructured$Land[export_restructured$Land == "Korea (Süd) "|export_restructured$Land == "Korea (Süd) / Corée du Sud"|export_restructured$Land == "Korea (Süd) / Corte du Sud"|export_restructured$Land == "Korea (Süd)"|export_restructured$Land == "Süd Korea"] <- "Südkorea"
export_restructured$Land[export_restructured$Land == "Kroatien / Croatie"] <- "Kroatien"
export_restructured$Land[export_restructured$Land == "Kuwait / Kowe'it"|export_restructured$Land == "Kuwait / Koweït"|export_restructured$Land == "Kuwait "] <- "Kuwait"
export_restructured$Land[export_restructured$Land == "Lettland / Letonie"|export_restructured$Land == "Lettland "] <- "Lettland"
export_restructured$Land[export_restructured$Land == "Libanon / Liban"|export_restructured$Land == "Lebanon"] <- "Libanon"
export_restructured$Land[export_restructured$Land == "Libyen / Libye"] <- "Libyen"
export_restructured$Land[export_restructured$Land == "Litauen / Lituanie"] <- "Litauen"
export_restructured$Land[export_restructured$Land == "Luxemburg / Luxembourg"] <- "Luxemburg"
export_restructured$Land[export_restructured$Land == "Macau / Macau"|export_restructured$Land == "Macao"] <- "Macau"
export_restructured$Land[export_restructured$Land == "Malaysia / Malaisie"] <- "Malaysia"
export_restructured$Land[export_restructured$Land == "Malta / Malte"] <- "Malta"
export_restructured$Land[export_restructured$Land == "Namibia / Namibie"] <- "Namibia"
export_restructured$Land[export_restructured$Land == "Neuseeland / Nvl. Zelande"|export_restructured$Land == "Neuseeland / Nouvelle Zélande"] <- "Neuseeland"
export_restructured$Land[export_restructured$Land == "Niederlände"|export_restructured$Land == "Niederlande / Pays-Bas"|export_restructured$Land == "Niederlände / Pays-Bas"] <- "Niederlande"
export_restructured$Land[export_restructured$Land == "Niger / Niger"] <- "Niger"
export_restructured$Land[export_restructured$Land == "Norwegen / Norvege"|export_restructured$Land == "Norwegen / Norvège"] <- "Norwegen"
export_restructured$Land[export_restructured$Land == "Oman / Oman"] <- "Oman"
export_restructured$Land[export_restructured$Land == "Österreich / Autriche"] <- "Österreich"
export_restructured$Land[export_restructured$Land == "Pakistan / Pakistan"] <- "Pakistan"
export_restructured$Land[export_restructured$Land == "Peru / Pérou"] <- "Peru"
export_restructured$Land[export_restructured$Land == "Philippinen / Philipinnes"] <- "Philippinen"
export_restructured$Land[export_restructured$Land == "Polen / Pologne"] <- "Polen"
export_restructured$Land[export_restructured$Land == "Portugal / Portugal"] <- "Portugal"
export_restructured$Land[export_restructured$Land == "Rumänien / Roumanie"] <- "Rumänien"
export_restructured$Land[export_restructured$Land == "Russland / Russie"] <- "Russland"
export_restructured$Land[export_restructured$Land == "San Marino / St Marin"] <- "San Marino"
export_restructured$Land[export_restructured$Land == "Saudi Arabien"|export_restructured$Land == "Saudi Arabien / Arab. Saoudite"|export_restructured$Land == "Saudi Arabien /Arab. Saoudite"|export_restructured$Land == "Saudi Arabien "] <- "Saudi-Arabien"
export_restructured$Land[export_restructured$Land == "Schweden / Suade"|export_restructured$Land == "Schweden / Suède" ] <- "Schweden"
export_restructured$Land[export_restructured$Land == "Singapur / Singapour"] <- "Singapur"
export_restructured$Land[export_restructured$Land == "Slowakai / Slovaquie"|export_restructured$Land == "Slowakai"] <- "Slowakei"
export_restructured$Land[export_restructured$Land == "Slowenien / Slovenie"] <- "Slowenien"
export_restructured$Land[export_restructured$Land == "Spanien / Espagne"] <- "Spanien"
export_restructured$Land[export_restructured$Land == "Südafrika / Afrique du Sud"] <- "Südafrika"
export_restructured$Land[export_restructured$Land == "Thailand / Thailande"] <- "Thailand"
export_restructured$Land[export_restructured$Land == "Tschechien / Rep. Tcheque"|export_restructured$Land == "Tschechien / Rép. Tchèque"] <- "Tschechien"
export_restructured$Land[export_restructured$Land == "Tunesien / Tunisie"] <- "Tunesien"
export_restructured$Land[export_restructured$Land == "Türkei / Turquie"|export_restructured$Land == "Türkei "] <- "Türkei"
export_restructured$Land[export_restructured$Land == "Ungarn / Hongrie"] <- "Ungarn"
export_restructured$Land[export_restructured$Land == "Uruguay / Uruguay"] <- "Uruguay"
export_restructured$Land[export_restructured$Land == "USA "|export_restructured$Land == "USA / Etats-Unis" | export_restructured$Land == "U.S.A"] <- "USA"
export_restructured$Land[export_restructured$Land == "Zypern / Chypre"] <- "Zypern"
export_restructured$Land[export_restructured$Land == "Antillen, Niederl."] <- "Niederländische Antillen"
export_restructured$Land[export_restructured$Land == "Kirgistan / Kirghistan"|export_restructured$Land == "Kirgistan"] <- "Kirgisistan"
export_restructured$Land[export_restructured$Land == "Ecuador "] <- "Ecuador"
export_restructured$Land[export_restructured$Land == "Madagascar"] <- "Madagaskar"
export_restructured$Land[export_restructured$Land == "Salvador"] <- "El Salvador"
export_restructured$Land[export_restructured$Land == "Surinam"] <- "Suriname"

Wie viele Länder gibt es jetzt noch?

length(unique(export_restructured$Land)) # Anzahl Länder
[1] 127
sort(unique(export_restructured$Land)) # Überblick über die Ländernamen, um eventuell übersehene Duplikate aufzuspüren
  [1] "Ägypten"                      "Algerien"                    
  [3] "Andorra"                      "Argentinien"                 
  [5] "Australien"                   "Bahrain"                     
  [7] "Bangladesch"                  "Barbados"                    
  [9] "Belgien"                      "Belize"                      
 [11] "Benin"                        "Bermuda"                     
 [13] "Bhutan"                       "Bosnien-Herzegowina"         
 [15] "Botswana"                     "Brasilien"                   
 [17] "Brunei"                       "Bulgarien"                   
 [19] "Burkina Faso"                 "Chile"                       
 [21] "China"                        "Costa Rica"                  
 [23] "Dänemark"                     "Deutschland"                 
 [25] "Dominica"                     "Dominikanische Republik"     
 [27] "Ecuador"                      "Elfenbeinküste"              
 [29] "El Salvador"                  "Estland"                     
 [31] "Finnland"                     "Frankreich"                  
 [33] "Französisch-Polynesien"       "Gabun"                       
 [35] "Georgien"                     "Ghana"                       
 [37] "Griechenland"                 "Grossbritannien"             
 [39] "Guinea"                       "Guinea-Bissau"               
 [41] "Heiliger Stuhl"               "Honduras"                    
 [43] "Hong-Kong"                    "Indien"                      
 [45] "Indonesien"                   "Irland"                      
 [47] "Island"                       "Israel"                      
 [49] "Italien"                      "Japan"                       
 [51] "Jordanien"                    "Kamerun"                     
 [53] "Kanada"                       "Kap Verde"                   
 [55] "Kasachstan"                   "Katar"                       
 [57] "Kenia"                        "Kirgisistan"                 
 [59] "Kolumbien"                    "Kosovo"                      
 [61] "Kroatien"                     "Kuwait"                      
 [63] "Lettland"                     "Libanon"                     
 [65] "Libyen"                       "Litauen"                     
 [67] "Luxemburg"                    "Macau"                       
 [69] "Madagaskar"                   "Malawi"                      
 [71] "Malaysia"                     "Mali"                        
 [73] "Malta"                        "Mauretanien"                 
 [75] "Mazedonien"                   "Mexiko"                      
 [77] "Mongolei"                     "Montenegro"                  
 [79] "Namibia"                      "Neuseeland"                  
 [81] "Niederlande"                  "Niederländische Antillen"    
 [83] "Niger"                        "Norwegen"                    
 [85] "Oman"                         "Österreich"                  
 [87] "Pakistan"                     "Panama"                      
 [89] "Paraguay"                     "Peru"                        
 [91] "Philippinen"                  "Polen"                       
 [93] "Portugal"                     "Rumänien"                    
 [95] "Russland"                     "Sambia"                      
 [97] "San Marino"                   "Saudi-Arabien"               
 [99] "Schweden"                     "Senegal"                     
[101] "Serbien"                      "Seychellen"                  
[103] "Singapur"                     "Slowakei"                    
[105] "Slowenien"                    "Spanien"                     
[107] "Südafrika"                    "Sudan"                       
[109] "Südkorea"                     "Suriname"                    
[111] "Tansania"                     "Thailand"                    
[113] "Trinidad Tobago"              "Tschechien"                  
[115] "Tschechische Rep."            "Tunesien"                    
[117] "Türkei"                       "Turkmenistan"                
[119] "Uganda"                       "Ukraine"                     
[121] "Ungarn"                       "Uruguay"                     
[123] "USA"                          "Venezuela"                   
[125] "Vereinigte Arabische Emirate" "Vietnam"                     
[127] "Zypern"                      

127 verschiedene Länder wurden im Zeitraum 2000 bis 2016 beliefert

Output als CSV

export_csv <- export_restructured %>% dplyr::rename(Kategorie = variable, Wert = value)
write.csv(export_csv, file = "output/export.csv", fileEncoding = "utf-8", row.names = F)
rm(export_csv)

SRF Theme für die Grafiken vorbereiten

theme_srf <- function(base_size = 10, base_family = "Arial", ...) {
  theme_bw() +
    theme(
      title = element_text(size = 16, family = base_family, face = "bold"), 
      text = element_text(color = "#555555", family = base_family),
      legend.text = element_text(size = 12), 
      legend.title = element_text(size = 14),
      legend.margin = unit(0, "cm"),
      axis.line = element_blank(),
      legend.box = "vertical", 
      panel.border = element_blank(),
      plot.background = element_rect(fill = "#f5f5f2"), 
      panel.background = element_rect(fill = "#f5f5f2"), 
      legend.background = element_rect(fill = "#f5f5f2"),  
      legend.key = element_blank(),
      legend.key.width = unit(c(0.7), units = "cm"),
      legend.key.height = unit(c(0.5), units = "cm"),
      axis.line = element_blank(),
      panel.grid.minor = element_blank(), 
      panel.margin = unit(c(0.4,0.4,0.4,0.4), units = "mm"),
      plot.margin = unit(c(0.9,0.9,0.9,0.9), "cm"),
      axis.title.y = element_text(size = 14, vjust = 2),
      axis.title.x = element_text(size = 14, vjust = -1),
      axis.text = element_text(size = 12),
      complete = TRUE,
      ...
    )
}

# kleineres srf theme
theme_srf_small <- function(base_size = 8, base_family = "Arial", ...) {
  theme_srf() +
    theme(
      title = element_text(size = 14, family = base_family, face = "bold"), 
      text = element_text(color = "#555555", family = base_family),
      legend.text = element_text(size = 9), 
      legend.title = element_text(size = 11),
      legend.key.width = unit(c(0.7), units = "cm"),
      legend.key.height = unit(c(0.5), units = "cm"),
      panel.margin = unit(c(0.4,0.4,0.4,0.4), units = "mm"),
      plot.margin = unit(c(0.9,0.9,0.9,0.9), "cm"),
      axis.title.y = element_text(size = 12, vjust = 2),
      axis.title.x = element_text(size = 12, vjust = -1),
      axis.text = element_text(size = 11),
      ...
    )
}

sources <- function(text = "SECO", vpos = "top"){
  g = grobTree(textGrob(paste("Quelle:", text), x = ifelse(vpos == "top", 0.5, 0.955), y = ifelse(vpos == "top", 0.98, 0.08), just = ifelse(vpos == "top", "center", "right"), vjust = ifelse(vpos == "top", "top", "bottom"), gp = gpar(fontfamily = "SRG SSR Type", col = "#555555", fontsize = 14)))
  annotation_custom(g)
}

sources_small <- function(text = "SECO", vpos = "top"){
  g = grobTree(textGrob(paste("Quelle:", text), x = ifelse(vpos == "top", 0.5, 0.955), y = ifelse(vpos == "top", 0.98, 0.08), just = ifelse(vpos == "top", "center", "right"), vjust = ifelse(vpos == "top", "top", "bottom"), gp = gpar(fontfamily = "Arial", col = "#555555", fontsize = 10)))
  annotation_custom(g)
}

Analyse

Exportvolumen nach Zeit

Wie hat sich das Exportvolumen über die Jahre verändert?

Export <- export_restructured %>% 
   group_by(Jahr) %>% # ordnet die Daten nach Jahren an
   dplyr::summarise(value = sum(value)) # fasst Exportvolumen nach Jahren zusammen

Export # Zeigt Exportvolumen gesamt pro Jahr
# A tibble: 17 x 2
    Jahr     value
   <int>     <dbl>
1   2000 213611849
2   2001 258216469
3   2002 277659264
4   2003 379062227
5   2004 402359096
6   2005 258748578
7   2006 397611423
8   2007 464482098
9   2008 721968433
10  2009 727722790
11  2010 640498611
12  2011 872684995
13  2012 700420664
14  2013 461192174
15  2014 563500800
16  2015 446550281
17  2016 411938930
sum(Export$value) # Summe aller Exporte der letzten 15 Jahre
[1] 8198228682
sum(Export$value[Export$Jahr >= 2010]) # Summe aller Exporter der letzten 5 Jahre
[1] 4096786455
sum(Export$value[Export$Jahr >= 2010])/sum(Export$value)*100 # Anteil der Exporte der letzten 5 Jahre am Gesamtexportvolumen
[1] 49.97161
# Barplot des Gesamtvolumens nach Jahr
volmio_1 <- Export$value/1000000 # Exportvolumen in Millionen
ExportBar <- ggplot(data = Export, aes(x = Jahr, y = volmio_1)) + 
   geom_bar(stat = "identity", fill = "#94928d") + 
   xlab("Jahr") +
   scale_y_continuous(name="Exportvolumen in Mio. CHF", labels=function(x) format(x, big.mark = "'", scientific = FALSE))+
   theme_srf_small()+
   sources_small("SECO", vpos = "top") +
   ggtitle(paste("Exportvolumen")) +
   scale_x_continuous(breaks=seq(2000,2016,1),labels=abs(seq(2000,2016,1))) + 
   theme(axis.text.x = element_text(angle=0, vjust=0.5))

ExportBar

# speichern der Grafik als png im Ordner output
#png(filename = "output/ExportvolumenNachJahr.png", width = 624, height = 468)
#ExportBar + theme_srf() + sources("SECO", vpos = "top")+theme(axis.text.x = element_text(angle=-30, #vjust=0.5))
#dev.off()
rm(ExportBar, volmio_1)

Empfängerländer

An wie viele verschiedene Länder hat die Schweiz pro Jahr Kriegsgüter exportiert?

# Berechne Anzahl der belieferten Länder pro Jahr

AnzahlLaender <- list() # leere Zielliste
for(i in 2000:2016){ # Schleife über die Daten aus den Jahren 2000 bis 2014
AnzahlLaender[[i]] <- length(unique(export_restructured[export_restructured$Jahr==i,]$Land)) # Anzahl der Länder werden nach Jahr berechnet und das Ergebnis in der Liste abgelegt
}

Anzahldat <- do.call(rbind.data.frame, AnzahlLaender[2000:2016]) # Anzahlliste zu data frame machen
names(Anzahldat) <- c("Anzahl") # Namen der Anzahlspalte ändern
Anzahldat$Jahr <- 2000:2016 # Zweite Spalte mit Jahreszahlen hinzufügen
Anzahldat # data frame mit Anzahl belieferter Länder pro Jahr
   Anzahl Jahr
1      57 2000
2      66 2001
3      59 2002
4      65 2003
5      59 2004
6      72 2005
7      62 2006
8      66 2007
9      72 2008
10     74 2009
11     69 2010
12     68 2011
13     68 2012
14     71 2013
15     72 2014
16     71 2015
17     70 2016
# Barplot der Azahl belieferter Länder nach Jahr
AnzahlLaenderBar <- ggplot(data = Anzahldat, aes(x = Jahr, y = Anzahl)) + 
   geom_bar(stat = "identity") + 
   xlab("Jahr") +
   scale_y_continuous(name="Länderanzahl")+
   theme_srf_small()+
   sources_small("SECO", vpos = "top") +
   geom_text(aes(label = Anzahl, vjust=-0.2), size = 4)+
   ggtitle(paste("Belieferte Länder nach Jahr")) +
   scale_x_continuous(breaks=seq(2000,2016,1),labels=abs(seq(2000,2016,1))) + 
   theme(axis.text.x = element_text(angle=0, vjust=0.5))
   
AnzahlLaenderBar

# speichern der Grafik als png im Ordner output
#png(filename = "output/AnzahlLaender.png", width = 624, height = 468)
#AnzahlLaenderBar + theme_srf() 
#dev.off()

# Durchschnitt belieferter Länder pro Jahr
sum(Anzahldat$Anzahl)/length(Anzahldat$Anzahl)
[1] 67.11765
rm(Anzahldat, laender, AnzahlLaender, AnzahlLaenderBar, i)
Stammkunden

Welche Länder wurden in jedem Jahr aufs Neue beliefert?

Stammlaender <- list() # leere Zielliste
for(i in 2000:2016){
  Stammlaender[[i]] <- unique(export_restructured[export_restructured$Jahr==i,]$Land) # Länder werden nach Jahren sortiert und in der Liste abgelegt
}

Stamm <- Reduce(intersect, Stammlaender[2000:2016]) # Vektor der Länder, die in jedem Jahr beliefert wurden

length(Stamm) # Anzahl der Länder, die in jedem Jahr unter den Belieferten zu finden sind
[1] 28
rm(Stamm, Stammlaender)

Rüstungsunternehmen aus der Schweiz belieferten im Zeitraum von 2000 bis 2016 127 verschiedene Länder mit Kriegsgütern, im Schnitt jährlich 67 Länder. Es gibt 28 Stammländer, an die jedes Jahr geliefert wurde.

Mit welchen 10 Ländern wird am meisten gehandelt?

# 2000-2016 gesamt
# erstelle data frame, der nur die zehn Länder mit den höchsten Exportvolumen des Zeitabschnitts enthält  

Top10 <- export_restructured %>% 
   group_by(Land) %>%
   summarize(value = sum(value)) %>%
   arrange(desc(value)) %>%
   slice(1:10)

# filtere alle Informationen nur dieser zehn Länder aus den Gesamtdaten heraus
 laenderSummen10Sortiert <- export_restructured  %>%
                            filter(Land %in% Top10$Land) %>%
                            group_by(Land, variable) %>% # ordne auch nach Kategorie
                            summarize(value = sum(value)) %>% 
                            ungroup()
 
# definiere eine Funktion, die in filter() als "alles, außer" genutzt werden kann
'%!in%' <- function(x,y)!('%in%'(x,y)) 
 
# definiere data frame, der alle anderen Länder enthält
laenderAndere <- export_restructured %>%
                filter(Land %!in% Top10$Land) %>%
                group_by(variable) %>%
                summarize(value = sum(value)) %>%
                arrange(desc(value)) %>% 
                select(variable, value) %>% 
                ungroup()
laenderAndere$Land <- c("Andere") # benenne die Länder in "Andere" um

# Reihenfolge ändern
laenderAndere <- laenderAndere %>% select(Land, variable, value)

# binde die data frames zu einem 
df1 <- laenderSummen10Sortiert[order(match(laenderSummen10Sortiert$Land, Top10$Land)), ]
laenderSummen10SortiertForBar <- rbind(df1,  laenderAndere) 

# barplot des Exportvolumens der zehn Länder mit dem größten Exportvolumen für das Zeitintervall sowie der Summe der Exportvolumen aller anderen Länder eingefärbt nach Kategorien
valmio_2 <- laenderSummen10SortiertForBar$value/1000000000 # Exportvolumen in Millionen
laenderSummenBar <- ggplot(data = laenderSummen10SortiertForBar, aes(x = factor(Land, levels=unique(as.character(Land)) ), y = valmio_2, fill = factor(variable), order = variable)) + 
   geom_bar(stat = "identity") +
   scale_y_continuous(name="Exportvolumen in Mrd. CHF", labels=function(x) format(x, big.mark = "'", scientific = FALSE))+
   theme_srf_small()+
   sources_small("SECO", vpos = "top") +
   ggtitle("Exportvolumen nach Land und Kategorie\n 2000-2016") +
   theme(axis.text.x = element_text(angle=40, vjust=1, hjust=1, size=10))+
   guides(fill=guide_legend(title="Kategorie", reverse = T))+
   xlab("Land")

laenderSummenBar 

# speichern der Grafik als png im Ordner output   
#png(filename = "output/ExportvolumenNachJahrTop5.png", width = 624, height = 468)
#laenderSummenBar
#dev.off()

# erstelle nach dem gleichen Muster die gleiche Grafik über eine Schleife für jedes Jahr einzeln
Top10_ <- list()
Laendersummen_ <- list()
laenderAndere_ <- list()
laenderSummen10SortiertForBar_ <- list()
plot <- list()

for(i in 2000:2016){
data <- export_restructured[export_restructured$Jahr == i,]
  
Top10_[[i]] <- data %>%
               group_by(Land) %>%
               summarize(value = sum(value)) %>%
               arrange(desc(value)) %>%
               slice(1:10) 

yearsTop10 <- as.data.frame(Top10_[[i]])
 
Laendersummen_[[i]] <- data %>%
                       dplyr::filter(Land %in% yearsTop10$Land) %>%
                       group_by(Land, variable) %>%
                       summarize(value = sum(value))%>%
                       arrange(desc(value)) %>%
                       slice(1:10) %>% 
                       ungroup()
 
 laenderAndere_[[i]] <- data %>%
                        filter(Land %!in% yearsTop10$Land) %>%
                        group_by(variable) %>%
                        summarize(value = sum(value)) %>%
                        arrange(desc(value)) %>% 
                        select(variable, value) %>% 
                        ungroup()
laenderAndere_[[i]]$Land <- c("Andere")

# Reihenfolge ändern
laenderAndere_[[i]] <- laenderAndere_[[i]] %>% select(Land, variable, value)

laenderSummen10SortiertForBar_[[i]] <- rbind( Laendersummen_[[i]][order(match( Laendersummen_[[i]]$Land, yearsTop10$Land)), ], laenderAndere_[[i]]) 

valmio_4 <- laenderSummen10SortiertForBar_[[i]]$value/1000000
plot[[i]] <- ggplot(data = laenderSummen10SortiertForBar_[[i]], aes(x = factor(Land, levels=unique(as.character(Land)) ), y = valmio_4, fill = factor(variable), order = variable)) + 
   geom_bar(stat = "identity") +
   scale_y_continuous(name="Exportvolumen in Mio. CHF", labels=function(x) format(x, big.mark = "'", scientific = FALSE))+
   theme_srf_small()+
   sources_small("SECO", vpos = "top") +
   ggtitle(paste("Exportvolumen der Top 10\n", i)) +
   theme(axis.text.x = element_text(angle=40, vjust=1, hjust=1, size=10))+
   guides(fill=guide_legend(title="Kategorie", reverse = T))+
   xlab("Land")
}

# Grafik für:
# 2000
#plot[[2000]]
# 2001
#plot[[2001]]
# 2002
#plot[[2002]]
# 2003
#plot[[2003]]
# 2004
#plot[[2004]]
# 2005
#plot[[2005]]
# 2006
# plot[[2006]]
# 2007
#plot[[2007]]
# 2008
#plot[[2008]]
# 2009
#plot[[2009]]
# 2010
#plot[[2010]]
# 2011
#plot[[2011]]
# 2012
#plot[[2012]]
# 2013
#plot[[2013]]
# 2014
#plot[[2014]]
# 2015
#plot[[2015]]
# 2016
#plot[[2016]]
rm(Top10, df1, laenderAndere, laenderAndere_, laenderSummen10Sortiert, laenderSummen10SortiertForBar, laenderSummen10SortiertForBar_, yearsTop10, data, Laendersummen_, l