library(WDI)
## Warning: package 'WDI' was built under R version 4.2.2

Almanya, Türkiye, Japonya ve Fransa’nın bu konu hakkındaki verileri 1990-2020

df = WDI(indicator='NY.GDP.MKTP.KD.ZG', country=c('DE','TR','JP','FR'), start=1990, end=2020)
head(df)
##   country iso2c iso3c year NY.GDP.MKTP.KD.ZG
## 1 Germany    DE   DEU 2020         -4.569617
## 2 Germany    DE   DEU 2019          1.055508
## 3 Germany    DE   DEU 2018          1.086025
## 4 Germany    DE   DEU 2017          2.680231
## 5 Germany    DE   DEU 2016          2.230000
## 6 Germany    DE   DEU 2015          1.491932
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.2.2
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
df <- df %>%
  rename(ulke = 1,
         ulkekoduiso2 = 2,
         ulkekoduiso3 = 3,
         sene = 4,
         GSYİH = 5)
library(reshape2)
## Warning: package 'reshape2' was built under R version 4.2.2
data_genis <- dcast(df, sene ~ ulke, value.var="GSYİH")
tail(data_genis)
##    sene    France   Germany      Japan   Turkiye
## 26 2015  1.112912  1.491932  1.5606267 6.0844869
## 27 2016  1.095464  2.230000  0.7538267 3.3230842
## 28 2017  2.291420  2.680231  1.6753318 7.5019975
## 29 2018  1.865066  1.086025  0.5840681 2.9798852
## 30 2019  1.842972  1.055508 -0.2403508 0.8895852
## 31 2020 -7.855256 -4.569617 -4.5069045 1.7935514
df2 <- WDI(
  country = "all",
  indicator = "NY.GDP.MKTP.KD.ZG",
  start = 1990,
  end = 2020,
  extra = TRUE,
  cache = NULL,
  latest = NULL,
  language = "tr")
## Warning in WDI(country = "all", indicator = "NY.GDP.MKTP.KD.ZG", start = 1990, :
## This language is only supported partially.
df3<- df2 %>%
  select(iso2c, year, NY.GDP.MKTP.KD.ZG)
data_genis<-  data_genis %>% mutate(ulkekoduiso2=NULL, ulkekoduiso3=NULL)
tsveri <- ts(data_genis, start=1990, frequency=1)

Data_genis veri setimizi, bir zaman serisine çevirelim. R’da bu tür zaman serilerine, ts denilir.

tail(tsveri)
##       sene    France   Germany      Japan   Turkiye
## [26,] 2015  1.112912  1.491932  1.5606267 6.0844869
## [27,] 2016  1.095464  2.230000  0.7538267 3.3230842
## [28,] 2017  2.291420  2.680231  1.6753318 7.5019975
## [29,] 2018  1.865066  1.086025  0.5840681 2.9798852
## [30,] 2019  1.842972  1.055508 -0.2403508 0.8895852
## [31,] 2020 -7.855256 -4.569617 -4.5069045 1.7935514

frequency, seçeneği aylık verilerde 12, çeyreklik verilerde 4, haftalık verilerde 52 olarak girilir. Türkiye’nin verisini, zaman serisi grafiği olarak çizmek istersek.

library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.2
library(ggfortify)
## Warning: package 'ggfortify' was built under R version 4.2.2

Türkiye, Almanya, Japonya ve Fransa’nın verileri, ikinci, üçüncü, dördüncü ve beşinci sütundadır.

plot(tsveri[,2:4])

plot(tsveri[,2:4], plot.type = "single")

plot(tsveri[,2],
     type = "l",
     col = 2,
     ylim = c(0, 25),
     xlab = "Sene",
     ylab = "GSYİH")
lines(tsveri[,3],
      type = "l",
      col = 3)
lines(tsveri[,4],
      type = "l",
      col = 4)
legend("topright",                           
       c("Türkiye", "Almanya", "Japonya","Fransa"),
       lty = 1,
       col = 2:4)

Veri setinde sene isimli değişkene göre, veri setini uzun formatına geri dönmesi

data_uzun <- melt(data_genis, id.vars = "sene") 

data_uzun veri seti artık variable ve value isimli iki değişkene sahip, variable değişkeni dört ülkeyi sırasıyla gösteriyor, value değişkeni ise bu ülkelerdeki GSYİH değerlerini veriyor.

ggplot(data_uzun,                           
       aes(x = sene,
           y = value,
           col = variable)) +
  geom_line()