Gibson Paradoksu
Faiz Oranı ve Fiyatlar Genel Seviyesi Arasındaki İlişki: Gibson Paradoksunun Türkiye İçin Geçerliliği Üzerine Bir Analiz
Faiz oranı ve fiyatlar genel seviyesi arasındaki ilişkiyi analiz etmek için 2 değişken kullanılmıştır. Bu değişkenler nominal faiz oranı ve enflasyon (fiyatlar genel seviyesi)’dur.
Türkiye’ye ilişkin veri seti yıllık olarak World Bank’tan alınmıştır.
İlk olarak excel’de oluşturulan veriler aktarılmıştır.
library(readxl)
data <- read_excel("C:/Users/User1/Desktop/data.xlsx")
View(data)
Daha sonra veri setine ait ilk gözlemleri görmek için head() fonksiyonu kullanılmıştır. Yani head fonksiyonu, önceden tanımlı olan veri setinin ilk 6 satrını getirir.
head(data)
## # A tibble: 6 × 3
## Date InterestRate Inflation
## <dbl> <dbl> <dbl>
## 1 2000 47.2 54.9
## 2 2001 74.7 54.4
## 3 2002 50.5 45.0
## 4 2003 37.7 21.6
## 5 2004 24.3 8.60
## 6 2005 20.4 8.18
Veri setine ait son gözlemleri görmek adına tail fonksiyonu kullanabiliriz. Tail fonksiyonu veri setininin son 6 satrını getirir.
tail(data)
## # A tibble: 6 × 3
## Date InterestRate Inflation
## <dbl> <dbl> <dbl>
## 1 2016 14.6 7.78
## 2 2017 15.3 11.1
## 3 2018 23.3 16.3
## 4 2019 25.4 15.2
## 5 2020 13.4 12.3
## 6 2021 20.7 19.6
Veri setinin yapısını kontrol etmek için class fonksiyonu kullanabiliriz.
class(data)
## [1] "tbl_df" "tbl" "data.frame"
Veri setine ilişkin durağanlık analizi yapa bilmemiz için ilk olarak aşağıda verilen paketi yüklememiz gerekmektedir.
require(fUnitRoots)
## Zorunlu paket yükleniyor: fUnitRoots
tsibble paketi, düzenleme araçlarıyla düzenli zamansal veriler için bir veri altyapısı sağlar
require(tsibble)
## Zorunlu paket yükleniyor: tsibble
##
## Attaching package: 'tsibble'
## The following objects are masked from 'package:base':
##
## intersect, setdiff, union
Veri setini zaman serisine dönüştürmemiz için aşağıdaki işlemi gerçekleştirmemiz gerekmektedir.
require(tseries)
## Zorunlu paket yükleniyor: tseries
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
Veri setini zaman serisine dönüştürmek için tseries paketni yükledikten sonra aşağıdaki işlemi uygulayabiliriz.
veriler yıllık olduğundan dolayı frequency 1 olur
data = ts(data,
frequency = 1,
start = c(2000, 1))
psych paketi, kişilik, psikometrik teori ve deneysel psikoloji için araçlar sağlar.
library(psych)
psych paketini indirip çalıştırdıktan sonra describe fonksiyonu kullanılır. Describe fonksiyonu, Klasik psikometride ölçek oluşturma ve madde analizi için en yararlı olanları sağlar. Aralık, kodlama hatalarını kontrol etmek için bir veri kümesindeki ilk geçiş için en kullanışlıdır.
Böylelikle her iki değişkene ait tanımlayıcı istatistikleri görebiliriz. Bunun için aşağıdaki işlem uygulanır.
describe(data)
## vars n mean sd median trimmed mad min max range
## Date 1 22 2010.50 6.49 2010.50 2010.50 8.15 2000.00 2021.00 21.00
## InterestRate 2 22 24.81 15.06 20.55 21.84 7.50 13.36 74.70 61.34
## Inflation 3 22 16.27 14.96 9.24 13.11 2.71 6.25 54.92 48.66
## skew kurtosis se
## Date 0.00 -1.36 1.38
## InterestRate 1.94 3.18 3.21
## Inflation 1.76 1.61 3.19
Daha sonra zaman serisine dönüştürülmüş olan veri setimizin durağanlık testini yapa bilmemiz için apply fonksiyonu kullanabiriz.
Veri setine ilişkin durağanlık analizi test sonuçlarına göre her iki değişkene (nominal faiz oranı ve enflasyon) ait olasılık değerleri 0,05 olasılık değerlerinden küçük olduğundan dolayı durağan olduğu sonucuna ulaşılmıştır. Her iki değişkene ait en uygun gecikme uzunluğu 2 olduğu görülmektedir.
apply(data, 2, adf.test)
## Warning in summary.lm(res): essentially perfect fit: summary may be unreliable
## Warning in FUN(newX[, i], ...): p-value greater than printed p-value
## Warning in FUN(newX[, i], ...): p-value smaller than printed p-value
## $Date
##
## Augmented Dickey-Fuller Test
##
## data: newX[, i]
## Dickey-Fuller = 1.7321, Lag order = 2, p-value = 0.99
## alternative hypothesis: stationary
##
##
## $InterestRate
##
## Augmented Dickey-Fuller Test
##
## data: newX[, i]
## Dickey-Fuller = -3.6634, Lag order = 2, p-value = 0.04547
## alternative hypothesis: stationary
##
##
## $Inflation
##
## Augmented Dickey-Fuller Test
##
## data: newX[, i]
## Dickey-Fuller = -6.143, Lag order = 2, p-value = 0.01
## alternative hypothesis: stationary
Veri setine ait özete bakılırsa summary fonksiyonu kullanabiliriz.
Summary fonksiyonu, veri setinin yapısını anlamak için kullanılan diğer bir fonksiyondur.
summary(data)
## Date InterestRate Inflation
## Min. :2000 Min. :13.36 Min. : 6.251
## 1st Qu.:2005 1st Qu.:15.29 1st Qu.: 8.276
## Median :2010 Median :20.55 Median : 9.244
## Mean :2010 Mean :24.81 Mean :16.271
## 3rd Qu.:2016 3rd Qu.:24.02 3rd Qu.:16.044
## Max. :2021 Max. :74.70 Max. :54.915
Veri setinde yer alan nominal faiz oranı ve enflasyon arasındaki ilişki en yalın bir şekilde grafik ile gösterirsek plot fonksiyonu kullanabiliriz.
Her iki değişkeni aynı grafik üzerinde gösterirsek aşağıdaki işlemi uygulayabiliriz.
plot(data[,2:3], plot.type = "single")