## R Ue1.3 und Ue1.5 nelplosser Nelson-Plosser-Daten (extended) für die USA ## Aufgabe 1.3: Daten anschauen und interpretieren ## Aufgabe 1.5: %-uelle Veraenderung von Deflatoren berechnen und vergleichen ## Datenbeschreibung auf ## https://search.r-project.org/CRAN/refmans/urca/html/NPEXT.html ## Vgl. mit EViews-Daten-File: ZB wird unemploy in nelplosser1.wf1 mit ## lunemploy bezeichnet, um die Logarithmierung anzuzeigen library(urca) # unsere Daten sind nicht im basic-Package enthalten library(zoo) # es ist bequem bei Tagesdaten mit zoo zu arbeiten ## alle Variablen in logs (!) bis auf interest (bond yield) data(npext, package= "urca") # load data set npext, Nelson-Plosser dat <- npext # dat is a data.frame head(dat) tail(dat) dim(dat) # 129 Jahre, 14 Variable (+ Zeitachse) # 0-te Zeile in dat sind die names der Variablen # sapply(dat, class) # alle Spalten aus dat werden mit der Zeitachse-year indiziert dat.z <- zoo(dat, order.by= dat$year) head(dat.z) op <- par(mfrow=c(2,1)) # Anordnen von 2 Plots untereinander par(mar=c(2, 4, 4, 2) +0.1) plot.zoo(dat.z$cpi) #dat.z$cpi ist die cpi-Spalte in dat.z # par(mar=c(5, 4, 1, 2) +0.1) plot.zoo(dat.z$realgnp) par(op) # zuruecksetzen des Plot-Formats op <- par(mfrow=c(2,1)) par(mar=c(2, 4, 4, 2) +0.1) plot.zoo(dat.z$unemploy) # par(mar=c(5, 4, 1, 2) +0.1) plot.zoo(dat.z$interest) par(op) op <- par(mfrow=c(1,1)) # Inflationsrate ist hier (Daten bereits logarithmiert!) pi <- (dat.z$cpi - lag(dat.z$cpi, -1))*100 # Arbeitslosenrate (Aufheben des log) ur <- exp(dat.z$unemploy) # Wirtschaftswachstum ist hier (Daten bereits logarithmiert!) rho <- (dat.z$realgnp - lag(dat.z$realgnp, -1))*100 plot.zoo(pi) plot.zoo(ur) plot.zoo(rho) ## Berechnung des Deflators des GNP aus GNPnom und GNPreal ## Deflator = GNPnom/GNPreal hier defl <- exp(dat.z$nomgnp)/exp(dat.z$realgnp) pi_defl <- ( log(defl) - log(lag(defl,-1)) )*100 pi_gnpdefl <- (dat.z$gnpdefl - lag(dat.z$gnpdefl,-1))*100 #Darstellung der 3 Reihen in einem Plot plot.zoo(pi) lines(pi_defl, col="red") lines(pi_gnpdefl, col="blue") legend("bottomright", legend=c("pi","pi_defl","pi_gnpdefl"), text.col=c("black","red","blue")) ## Zusätzliche Fragen: # Vergleichen sie die historischen Werte mit denen des VPI66 für Oe # und den sonstigen aktuellen ihnen bekannten Werten. ## Bem: # Wenn sie spezielle Perioden auswaehlen wollen, indizieren sie # die Reihen statt mit year mit zB # yr46to88 <- dat$year[c(87:129)] # Periode nach WW2