Paketler

library(readxl)
library(tidyverse)
## Registered S3 methods overwritten by 'ggplot2':
##   method         from 
##   [.quosures     rlang
##   c.quosures     rlang
##   print.quosures rlang
## -- Attaching packages ------------------------------------- tidyverse 1.2.1 --
## v ggplot2 3.1.1     v purrr   0.3.2
## v tibble  2.1.2     v dplyr   0.8.1
## v tidyr   0.8.3     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.4.0
## -- Conflicts ---------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
#grafiklerde kullanacağımız fontu belirledik
windowsFonts("Proxima Nova" = windowsFont("Proxima Nova"))

#verilerde yer alan türkçe karakterler için
Sys.setlocale("LC_CTYPE", "turkish")
## [1] "Turkish_Turkey.1254"

Veriyi içeri aktarma

ibb_akp <- readRDS("C:/Users/Sadettin/Rstats/veri_birlestirme_dplyr/ibb_akp.rds")

ibb_chp <- readRDS("C:/Users/Sadettin/Rstats/veri_birlestirme_dplyr/ibb_chp.rds")

yolsuzluk_endeks <- readRDS("C:/Users/Sadettin/Rstats/veri_birlestirme_dplyr/yolsuzluk_endeks.rds")

dunya_ozgur <- readRDS("C:/Users/Sadettin/Rstats/veri_birlestirme_dplyr/dunya_ozgur.rds")

Verileri önizleyelim

glimpse(yolsuzluk_endeks)
## Observations: 180
## Variables: 3
## $ ülke  <chr> "Denmark", "New Zealand", "Finland", "Singapore", "Swede...
## $ bölge <chr> "WE/EU", "AP", "WE/EU", "AP", "WE/EU", "WE/EU", "WE/EU",...
## $ skor  <dbl> 88, 87, 85, 85, 85, 85, 84, 82, 81, 81, 80, 80, 77, 76, ...
glimpse(dunya_ozgur)
## Observations: 208
## Variables: 3
## $ ülke  <chr> "Abkhazia", "Afghanistan", "Albania", "Algeria", "Andorr...
## $ durum <chr> "Yarı Özgür", "Özgür Değil", "Yarı Özgür", "Özgür Değil"...
## $ puan  <dbl> 41, 26, 68, 35, 96, 26, 83, 83, 45, 98, 94, 12, 91, 12, ...

1.left_join ve right_join

ibb_secim1 <- ibb_akp %>% left_join(ibb_chp, by ="ilçe")

ibb_secim1
## # A tibble: 39 x 3
##    ilçe          akp   chp
##    <chr>       <dbl> <dbl>
##  1 zeyti·nburnu  47.1  52  
##  2 üsküdar      44.8  54.1
##  3 ümrani·ye     51.6  47.5
##  4 tuzla        45.6  53.1
##  5 sultangazi·   57.6  41.3
##  6 sultanbeyli·  65.8  32.8
##  7 şi·şli·        25.9  73.3
##  8 si·li·vri·      37.5  61.8
##  9 şi·le         49.3  49.2
## 10 sariyer      38.3  60.8
## # ... with 29 more rows
ibb_secim2<- ibb_akp %>% right_join(ibb_chp, by ="ilçe")
ibb_secim2
## # A tibble: 39 x 3
##    ilçe           akp   chp
##    <chr>        <dbl> <dbl>
##  1 adalar        28.6  70.9
##  2 arnavutköy    60.2  38.7
##  3 ataşehi·r      39.3  59.8
##  4 avcilar       37.3  62  
##  5 bağcilar      56.5  42.4
##  6 bahçeli·evler  47.2  51.8
##  7 bakirköy      20.1  79.2
##  8 başakşehi·r    51.2  47.5
##  9 bayrampaşa    48.5  50.6
## 10 beşi·ktaş      15.7  83.7
## # ... with 29 more rows

Görselleştirelim

Özel temayı belirleyelim

theme_custom1 <- function() {
  theme_minimal() +
    theme(
      text = element_text(family = "Proxima Nova", color = "gray25"),
      plot.title = element_text(face = "bold",size = 14),
      plot.subtitle = element_text(size = 13),
      axis.text.x= element_text(size=11),
      axis.text.y = element_text(size=11),
      plot.caption = element_text(size = 11, color = "gray30"),
      plot.background = element_rect(fill = "#f6f5f5"),
      legend.position = "none",
      strip.background = element_rect(colour = "#d9d9d9", fill = "#d9d9d9"),
      strip.text.x = element_text(size = 11, colour = "gray25", face = "bold"))
  
}
ibb_secim1 %>% mutate(fark = chp-akp) %>% 
  ggplot(aes(fct_reorder(ilçe, fark), fark,fill = ifelse(fark>0,"chp","akp")))+
  geom_col()+
  geom_text(aes(x = ilçe, y = fark,label = round(fark, 1), hjust = ifelse(fark > 0,-0.3,1.2)),size = 3.8,color= "gray25")+
  coord_flip()+
  scale_fill_manual(values =c("akp"="#ff922b","chp"="#fa5252"))+
  theme_custom1()+
  labs(x="",y="oy farkı",
       title = "İmamoğlu ve Yıldırım Arasındaki Oy Farkı", 
       subtitle = "Sıfırdan büyük değerlerde CHP, küçük değerlerde ise AKP öndedir",
       caption ="@demirelsadettin")

2.inner_join, anti_join ve full_join

yeni_veri1 <- yolsuzluk_endeks %>% inner_join(dunya_ozgur, by = "ülke")
yeni_veri1
## # A tibble: 169 x 5
##    ülke        bölge  skor durum       puan
##    <chr>       <chr> <dbl> <chr>      <dbl>
##  1 Denmark     WE/EU    88 Özgür         97
##  2 New Zealand AP       87 Özgür         98
##  3 Finland     WE/EU    85 Özgür        100
##  4 Singapore   AP       85 Yarı Özgür    52
##  5 Sweden      WE/EU    85 Özgür        100
##  6 Switzerland WE/EU    85 Özgür         96
##  7 Norway      WE/EU    84 Özgür        100
##  8 Netherlands WE/EU    82 Özgür         99
##  9 Canada      AME      81 Özgür         99
## 10 Luxembourg  WE/EU    81 Özgür         98
## # ... with 159 more rows
yeni_veri1 %>% ggplot(aes(skor, puan,color =bölge, size = puan))+ geom_jitter(size =4)+facet_wrap(~bölge)

yeni_veri2 <- yolsuzluk_endeks %>% anti_join(dunya_ozgur, by = "ülke")
yeni_veri2
## # A tibble: 11 x 3
##    ülke                             bölge  skor
##    <chr>                            <chr> <dbl>
##  1 United States of America         AME      71
##  2 Brunei Darussalam                AP       63
##  3 Saint Vincent and the Grenadines AME      58
##  4 Cabo Verde                       SSA      57
##  5 Korea, South                     AP       57
##  6 Saint Lucia                      AME      55
##  7 Gambia                           SSA      37
##  8 Democratic Republic of the Congo SSA      20
##  9 Congo                            SSA      19
## 10 Guinea Bissau                    SSA      16
## 11 Korea, North                     AP       14
yeni_veri3 <- dunya_ozgur %>% anti_join(yolsuzluk_endeks, by = "ülke")
yeni_veri3
## # A tibble: 39 x 3
##    ülke                durum        puan
##    <chr>               <chr>       <dbl>
##  1 Abkhazia            Yarı Özgür     41
##  2 Andorra             Özgür          96
##  3 Antigua and Barbuda Özgür          83
##  4 Belize              Özgür          86
##  5 Brunei              Özgür Değil    28
##  6 Cape Verde          Özgür          90
##  7 Congo (Brazzaville) Özgür Değil    21
##  8 Congo (Kinshasa)    Özgür Değil    17
##  9 Fiji                Yarı Özgür     59
## 10 Gaza Strip          Özgür Değil    12
## # ... with 29 more rows
yeni_veri4 <- yolsuzluk_endeks %>% full_join(dunya_ozgur, by = "ülke")
yeni_veri4
## # A tibble: 219 x 5
##    ülke        bölge  skor durum       puan
##    <chr>       <chr> <dbl> <chr>      <dbl>
##  1 Denmark     WE/EU    88 Özgür         97
##  2 New Zealand AP       87 Özgür         98
##  3 Finland     WE/EU    85 Özgür        100
##  4 Singapore   AP       85 Yarı Özgür    52
##  5 Sweden      WE/EU    85 Özgür        100
##  6 Switzerland WE/EU    85 Özgür         96
##  7 Norway      WE/EU    84 Özgür        100
##  8 Netherlands WE/EU    82 Özgür         99
##  9 Canada      AME      81 Özgür         99
## 10 Luxembourg  WE/EU    81 Özgür         98
## # ... with 209 more rows