#########################################################
#########################################################
# Wether station metadata and surroundings with DEM1000
#########################################################

library(sp)
library(rgeos)
## rgeos version: 0.3-5, (SVN revision 447)
##  GEOS runtime version: 3.4.2-CAPI-1.8.2 r3921 
##  Polygon checking: TRUE
library(rgdal)
## rgdal: version: 0.8-16, (SVN revision 498)
## Geospatial Data Abstraction Library extensions to R successfully loaded
## Loaded GDAL runtime: GDAL 1.11.0, released 2014/04/16
## Path to GDAL shared files: C:/Users/Matthias/R/rgdal/gdal
## GDAL does not use iconv for recoding strings.
## Loaded PROJ.4 runtime: Rel. 4.8.0, 6 March 2012, [PJ_VERSION: 480]
## Path to PROJ.4 shared files: C:/Users/Matthias/R/rgdal/proj
library(raster)
library(maptools)
## Checking rgeos availability: TRUE
library(gstat)
library(gridExtra)
## Loading required package: grid
sp.theme(TRUE)

####
# Import data
#####

# import station metadata:
setwd("C:/Users/Matthias/Documents/000 - uni/spatio-temporal data analysis/miniproject/Wetter_Klima")
mo=read.csv2("C:/Users/Matthias/Documents/000 - uni/spatio-temporal data analysis/miniproject/Wetter_Klima/Münster_Osnabrück/kl_10315_akt_txt/Stationsmetadaten_klima_stationen_01766_20121215_20140314.txt",dec=".")
ew=read.csv2("C:/Users/Matthias/Documents/000 - uni/spatio-temporal data analysis/miniproject/Wetter_Klima/Erfurt_Weimar/kl_10554_akt_txt/Stationsmetadaten_klima_stationen_01270_20121215_20140314.txt",dec=".")
stations=rbind(mo[3,], ew[6,])
stations$x=stations$Geogr.Laenge
stations$y=stations$Geogr.Breite
coordinates(stations) <- ~x+y
proj4string(stations) <- CRS("+proj=longlat +datum=WGS84")
# transform metadata to gauss-krüger
stations = spTransform(stations,CRSobj=CRS("+init=epsg:31467")) #31467 - DHDN / 3-degree Gauss-Kruger zone 3 
# export station metadata to shapefile
# writeOGR(stations,dsn="stations.shp",layer="stations",driver="ESRI Shapefile")
gDistance(stations[1,], stations[2,]) #distance betwenn stations: 260100.8 m
## [1] 260101
# import DGM1000
dgm=read.asciigrid("C:/Users/Matthias/Documents/000 - uni/spatio-temporal data analysis/miniproject/dgm1000.gk3.gridascii/dgm1000/dgm1000_gk3.asc", proj4string=CRS("+init=epsg:31467"))
names(dgm)<- "dgm1000_gk3"

#spplot(dgm)

#####
# create buffers and make overlays with dgm
#####

buffer.mo=gBuffer(stations[1, ],width=50000)
sel=over(dgm,buffer.mo)
dgm.mo = dgm[!is.na(sel),]
names(dgm.mo)<-"DEM1000_MS_OS"

buffer.ew=gBuffer(stations[2, ],width=50000)
sel=over(dgm,buffer.ew)
dgm.ew = dgm[!is.na(sel),]
names(dgm.ew)<-"DEM1000_EF_WE"

# trim data / remove columns and rows with missing values
dgm.mo.r = trim(raster(dgm.mo))
dgm.mo=as(dgm.mo.r, "SpatialGridDataFrame")
dgm.ew.r = trim(raster(dgm.ew))
dgm.ew=as(dgm.ew.r, "SpatialGridDataFrame")
#plot(dgm.mo.r)
#plot(dgm.ew.r)

###########
# Results:
###########
# plot elevation
a=spplot(dgm.ew, main="Erfurt-Weimar elevation (meter)",col.regions=bpy.colors(100))
b=spplot(dgm.mo, main="Münster-Osnabrück elevation (meter)",col.regions=bpy.colors(100))
grid.arrange(a,b, ncol=2)

plot of chunk unnamed-chunk-1

# print summary statistics
s=cbind(summary(dgm.ew.r), summary(dgm.mo.r));s
##         DEM1000_EF_WE DEM1000_MS_OS
## Min.            113.5         20.79
## 1st Qu.         222.7         47.49
## Median          302.1         60.55
## 3rd Qu.         404.7         78.81
## Max.            951.7        310.57
## NA's           2277.0       2295.00
# print standard deviation
sd(dgm.ew$DEM1000_EF_WE,na.rm=TRUE)
## [1] 150.8
sd(dgm.mo$DEM1000_MS_OS,na.rm=TRUE)
## [1] 30.61
#save.image("dgm1000_station_metadata.RData")


#############################
#############################
#Time Series Analysis
#############################
library(xts)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## 
## Die folgenden Objekte sind maskiert from 'package:base':
## 
##     as.Date, as.Date.numeric
#
# Data Import
#
setwd("C:/Users/Matthias/Documents/000 - uni/spatio-temporal data analysis/miniproject/Wetter_Klima/")

mo_akt=read.csv("Münster_Osnabrück/kl_10315_akt_txt/produkt_klima_Tageswerte_20121215_20140314_01766.txt")
mo_hist=read.csv("Münster_Osnabrück/kl_10315_hist_txt/produkt_klima_Tageswerte_19891001_20121231_01766.txt")
ew_akt=read.csv("Erfurt_Weimar/kl_10554_akt_txt/produkt_klima_Tageswerte_20121215_20140314_01270.txt")
ew_hist=read.csv("Erfurt_Weimar/kl_10554_hist_txt/produkt_klima_Tageswerte_19510101_20121231_01270.txt")

#merge datasets
sel=which(mo_hist$Mess_Datum==mo_akt$Mess_Datum[1]);sel
## [1] 8477
mo.merged = rbind(mo_hist[1:sel-1,], mo_akt) 
# clean up data / NA values
mo.merged=data.frame(lapply(mo.merged, function(x){
replace(x, x==-999, NA)
}))
mo.merged$Date=as.Date(as.character(mo.merged$Mess_Datum), "%Y%m%d")
summary(mo.merged)
##   Stations_ID     Mess_Datum       Qualitaets_Niveau BEDECKUNGSGRAD
##  Min.   :1766   Min.   :19891001   Min.   : 1.00     Min.   :0.00  
##  1st Qu.:1766   1st Qu.:19951111   1st Qu.:10.00     1st Qu.:4.20  
##  Median :1766   Median :20011222   Median :10.00     Median :5.80  
##  Mean   :1766   Mean   :20015392   Mean   : 8.83     Mean   :5.35  
##  3rd Qu.:1766   3rd Qu.:20080184   3rd Qu.:10.00     3rd Qu.:7.00  
##  Max.   :1766   Max.   :20140313   Max.   :10.00     Max.   :8.00  
##                                                                    
##   REL_FEUCHTE      DAMPFDRUCK   LUFTTEMPERATUR  LUFTDRUCK_STATIONSHOEHE
##  Min.   : 32.0   Min.   : 1.5   Min.   :-15.8   Min.   : 969           
##  1st Qu.: 71.0   1st Qu.: 7.1   1st Qu.:  5.1   1st Qu.:1004           
##  Median : 80.0   Median : 9.6   Median : 10.1   Median :1010           
##  Mean   : 78.3   Mean   :10.1   Mean   : 10.0   Mean   :1009           
##  3rd Qu.: 87.0   3rd Qu.:12.9   3rd Qu.: 15.2   3rd Qu.:1015           
##  Max.   :100.0   Max.   :23.6   Max.   : 28.4   Max.   :1039           
##                                                                        
##  WINDGESCHWINDIGKEIT LUFTTEMP_AM_ERDB_MINIMUM LUFTTEMPERATUR_MINIMUM
##  Min.   : 0.40       Min.   :-24.90           Min.   :-21.50        
##  1st Qu.: 2.10       1st Qu.: -0.20           1st Qu.:  1.60        
##  Median : 3.00       Median :  4.40           Median :  6.20        
##  Mean   : 3.32       Mean   :  4.05           Mean   :  5.97        
##  3rd Qu.: 4.20       3rd Qu.:  8.90           3rd Qu.: 10.70        
##  Max.   :14.40       Max.   : 21.60           Max.   : 23.00        
##  NA's   :18                                                         
##  LUFTTEMPERATUR_MAXIMUM WINDSPITZE_MAXIMUM NIEDERSCHLAGSHOEHE_IND
##  Min.   :-13.0          Min.   : 1.4       Min.   :0.00          
##  1st Qu.:  8.2          1st Qu.: 7.1       1st Qu.:0.00          
##  Median : 14.1          Median : 9.5       Median :6.00          
##  Mean   : 14.2          Mean   :10.1       Mean   :4.27          
##  3rd Qu.: 20.2          3rd Qu.:12.3       3rd Qu.:6.00          
##  Max.   : 37.5          Max.   :34.8       Max.   :8.00          
##                         NA's   :16                               
##  NIEDERSCHLAGSHOEHE SONNENSCHEINDAUER  SCHNEEHOEHE      eor      
##  Min.   :  0.00     Min.   : 0.00     Min.   : 0.000   eor:8930  
##  1st Qu.:  0.00     1st Qu.: 0.30     1st Qu.: 0.000             
##  Median :  0.10     Median : 3.25     Median : 0.000             
##  Mean   :  2.05     Mean   : 4.32     Mean   : 0.176             
##  3rd Qu.:  2.20     3rd Qu.: 7.20     3rd Qu.: 0.000             
##  Max.   :140.10     Max.   :16.20     Max.   :25.000             
##                     NA's   :1                                    
##       Date           
##  Min.   :1989-10-01  
##  1st Qu.:1995-11-11  
##  Median :2001-12-21  
##  Mean   :2001-12-21  
##  3rd Qu.:2008-01-31  
##  Max.   :2014-03-13  
## 
mo.ts=xts(mo.merged,order.by=mo.merged$Date)


sel=which(ew_hist$Mess_Datum==ew_akt$Mess_Datum[1]);sel
## [1] 22630
ew.merged = rbind(ew_hist[1:sel-1,], ew_akt)
# clean up data / NA values
ew.merged=data.frame(lapply(ew.merged, function(x){
replace(x, x==-999, NA)
}))
summary(ew.merged)
##   Stations_ID     Mess_Datum       Qualitaets_Niveau BEDECKUNGSGRAD
##  Min.   :1270   Min.   :19510101   Min.   : 1.00     Min.   :0.00  
##  1st Qu.:1270   1st Qu.:19661020   1st Qu.: 5.00     1st Qu.:4.00  
##  Median :1270   Median :19820807   Median : 5.00     Median :5.80  
##  Mean   :1270   Mean   :19821665   Mean   : 7.17     Mean   :5.34  
##  3rd Qu.:1270   3rd Qu.:19980526   3rd Qu.:10.00     3rd Qu.:7.10  
##  Max.   :1270   Max.   :20140313   Max.   :10.00     Max.   :8.00  
##                                                      NA's   :30    
##   REL_FEUCHTE      DAMPFDRUCK    LUFTTEMPERATUR   LUFTDRUCK_STATIONSHOEHE
##  Min.   : 29.0   Min.   : 0.90   Min.   :-21.70   Min.   : 930           
##  1st Qu.: 71.0   1st Qu.: 6.10   1st Qu.:  2.60   1st Qu.: 973           
##  Median : 80.0   Median : 8.60   Median :  8.60   Median : 979           
##  Mean   : 78.5   Mean   : 9.16   Mean   :  8.31   Mean   : 978           
##  3rd Qu.: 87.0   3rd Qu.:12.00   3rd Qu.: 14.40   3rd Qu.: 984           
##  Max.   :100.0   Max.   :23.70   Max.   : 29.10   Max.   :1006           
##                                                   NA's   :549            
##  WINDGESCHWINDIGKEIT LUFTTEMP_AM_ERDB_MINIMUM LUFTTEMPERATUR_MINIMUM
##  Min.   : 0          Min.   :-29.5            Min.   :-25.00        
##  1st Qu.: 2          1st Qu.: -1.5            1st Qu.: -0.20        
##  Median : 3          Median :  3.1            Median :  4.70        
##  Mean   : 4          Mean   :  2.8            Mean   :  4.33        
##  3rd Qu.: 5          3rd Qu.:  8.2            3rd Qu.:  9.80        
##  Max.   :14          Max.   : 21.5            Max.   : 23.00        
##  NA's   :8289        NA's   :371                                    
##  LUFTTEMPERATUR_MAXIMUM WINDSPITZE_MAXIMUM NIEDERSCHLAGSHOEHE_IND
##  Min.   :-19.2          Min.   : 0         Min.   :0.00          
##  1st Qu.:  5.6          1st Qu.: 7         1st Qu.:0.00          
##  Median : 12.8          Median :10         Median :1.00          
##  Mean   : 12.5          Mean   :11         Mean   :3.02          
##  3rd Qu.: 19.4          3rd Qu.:13         3rd Qu.:6.00          
##  Max.   : 36.5          Max.   :43         Max.   :8.00          
##                         NA's   :8562       NA's   :4             
##  NIEDERSCHLAGSHOEHE SONNENSCHEINDAUER  SCHNEEHOEHE    eor       
##  Min.   : 0.00      Min.   : 0.00     Min.   : 0     eor:23083  
##  1st Qu.: 0.00      1st Qu.: 0.40     1st Qu.: 0                
##  Median : 0.00      Median : 3.50     Median : 0                
##  Mean   : 1.46      Mean   : 4.46     Mean   : 1                
##  3rd Qu.: 1.20      3rd Qu.: 7.50     3rd Qu.: 0                
##  Max.   :75.00      Max.   :16.00     Max.   :45                
##  NA's   :3                            NA's   :9131
ew.merged$Date=as.Date(as.character(ew.merged$Mess_Datum), "%Y%m%d")
ew.ts=xts(ew.merged,order.by=ew.merged$Date)


####
# select largest common time period in years
# 21.12 - approx. winter solstice 
####
mo.per = mo.ts["1989-12-21::2013-12-21"]
ew.per = ew.ts["1989-12-21::2013-12-21"]
summary(sapply(mo.per, as.numeric))
##   Stations_ID     Mess_Datum       Qualitaets_Niveau BEDECKUNGSGRAD
##  Min.   :1766   Min.   :19891221   Min.   : 3.00     Min.   :0.00  
##  1st Qu.:1766   1st Qu.:19951222   1st Qu.:10.00     1st Qu.:4.20  
##  Median :1766   Median :20011221   Median :10.00     Median :5.80  
##  Mean   :1766   Mean   :20015383   Mean   : 8.88     Mean   :5.36  
##  3rd Qu.:1766   3rd Qu.:20071222   3rd Qu.:10.00     3rd Qu.:7.00  
##  Max.   :1766   Max.   :20131221   Max.   :10.00     Max.   :8.00  
##                                                                    
##   REL_FEUCHTE      DAMPFDRUCK   LUFTTEMPERATUR  LUFTDRUCK_STATIONSHOEHE
##  Min.   : 32.0   Min.   : 1.5   Min.   :-15.8   Min.   : 969           
##  1st Qu.: 71.0   1st Qu.: 7.2   1st Qu.:  5.2   1st Qu.:1004           
##  Median : 80.0   Median : 9.7   Median : 10.2   Median :1010           
##  Mean   : 78.3   Mean   :10.2   Mean   : 10.1   Mean   :1009           
##  3rd Qu.: 87.0   3rd Qu.:12.9   3rd Qu.: 15.3   3rd Qu.:1015           
##  Max.   :100.0   Max.   :23.6   Max.   : 28.4   Max.   :1039           
##                                                                        
##  WINDGESCHWINDIGKEIT LUFTTEMP_AM_ERDB_MINIMUM LUFTTEMPERATUR_MINIMUM
##  Min.   : 0.40       Min.   :-24.9            Min.   :-21.50        
##  1st Qu.: 2.10       1st Qu.: -0.2            1st Qu.:  1.60        
##  Median : 3.00       Median :  4.4            Median :  6.30        
##  Mean   : 3.32       Mean   :  4.1            Mean   :  6.03        
##  3rd Qu.: 4.20       3rd Qu.:  8.9            3rd Qu.: 10.80        
##  Max.   :14.40       Max.   : 21.6            Max.   : 23.00        
##  NA's   :18                                                         
##  LUFTTEMPERATUR_MAXIMUM WINDSPITZE_MAXIMUM NIEDERSCHLAGSHOEHE_IND
##  Min.   :-13.0          Min.   : 1.4       Min.   :0.00          
##  1st Qu.:  8.2          1st Qu.: 7.1       1st Qu.:0.00          
##  Median : 14.2          Median : 9.5       Median :6.00          
##  Mean   : 14.2          Mean   :10.1       Mean   :4.28          
##  3rd Qu.: 20.3          3rd Qu.:12.3       3rd Qu.:6.00          
##  Max.   : 37.5          Max.   :34.8       Max.   :8.00          
##                         NA's   :16                               
##  NIEDERSCHLAGSHOEHE SONNENSCHEINDAUER  SCHNEEHOEHE          eor      
##  Min.   :  0.00     Min.   : 0.00     Min.   : 0.000   Min.   : NA   
##  1st Qu.:  0.00     1st Qu.: 0.30     1st Qu.: 0.000   1st Qu.: NA   
##  Median :  0.10     Median : 3.30     Median : 0.000   Median : NA   
##  Mean   :  2.06     Mean   : 4.34     Mean   : 0.179   Mean   :NaN   
##  3rd Qu.:  2.20     3rd Qu.: 7.28     3rd Qu.: 0.000   3rd Qu.: NA   
##  Max.   :140.10     Max.   :16.20     Max.   :25.000   Max.   : NA   
##                     NA's   :1                          NA's   :8767  
##       Date     
##  Min.   : NA   
##  1st Qu.: NA   
##  Median : NA   
##  Mean   :NaN   
##  3rd Qu.: NA   
##  Max.   : NA   
##  NA's   :8767
summary(sapply(ew.per, as.numeric))
##   Stations_ID     Mess_Datum       Qualitaets_Niveau BEDECKUNGSGRAD
##  Min.   :1270   Min.   :19891221   Min.   : 3.00     Min.   :0.00  
##  1st Qu.:1270   1st Qu.:19951222   1st Qu.:10.00     1st Qu.:4.20  
##  Median :1270   Median :20011221   Median :10.00     Median :5.90  
##  Mean   :1270   Mean   :20015383   Mean   : 8.88     Mean   :5.41  
##  3rd Qu.:1270   3rd Qu.:20071222   3rd Qu.:10.00     3rd Qu.:7.00  
##  Max.   :1270   Max.   :20131221   Max.   :10.00     Max.   :8.00  
##                                                                    
##   REL_FEUCHTE      DAMPFDRUCK   LUFTTEMPERATUR  LUFTDRUCK_STATIONSHOEHE
##  Min.   : 32.0   Min.   : 1.4   Min.   :-18.2   Min.   : 942           
##  1st Qu.: 70.0   1st Qu.: 6.2   1st Qu.:  3.1   1st Qu.: 973           
##  Median : 79.0   Median : 8.9   Median :  9.1   Median : 978           
##  Mean   : 78.1   Mean   : 9.4   Mean   :  8.8   Mean   : 978           
##  3rd Qu.: 87.0   3rd Qu.:12.2   3rd Qu.: 14.9   3rd Qu.: 983           
##  Max.   :100.0   Max.   :23.7   Max.   : 29.1   Max.   :1004           
##                                                                        
##  WINDGESCHWINDIGKEIT LUFTTEMP_AM_ERDB_MINIMUM LUFTTEMPERATUR_MINIMUM
##  Min.   : 0.00       Min.   :-28.00           Min.   :-23.50        
##  1st Qu.: 2.50       1st Qu.: -1.30           1st Qu.:  0.00        
##  Median : 3.60       Median :  3.20           Median :  5.00        
##  Mean   : 4.06       Mean   :  2.91           Mean   :  4.64        
##  3rd Qu.: 5.10       3rd Qu.:  8.20           3rd Qu.: 10.00        
##  Max.   :14.20       Max.   : 21.50           Max.   : 23.00        
##  NA's   :253         NA's   :6                                      
##  LUFTTEMPERATUR_MAXIMUM WINDSPITZE_MAXIMUM NIEDERSCHLAGSHOEHE_IND
##  Min.   :-15.2          Min.   : 0.4       Min.   :0.00          
##  1st Qu.:  6.2          1st Qu.: 7.3       1st Qu.:0.00          
##  Median : 13.1          Median : 9.8       Median :6.00          
##  Mean   : 12.9          Mean   :10.6       Mean   :4.23          
##  3rd Qu.: 19.8          3rd Qu.:13.0       3rd Qu.:6.00          
##  Max.   : 36.0          Max.   :35.0       Max.   :8.00          
##                         NA's   :191        NA's   :2             
##  NIEDERSCHLAGSHOEHE SONNENSCHEINDAUER  SCHNEEHOEHE        eor      
##  Min.   : 0.0       Min.   : 0.00     Min.   : 0.0   Min.   : NA   
##  1st Qu.: 0.0       1st Qu.: 0.50     1st Qu.: 0.0   1st Qu.: NA   
##  Median : 0.0       Median : 3.67     Median : 0.0   Median : NA   
##  Mean   : 1.5       Mean   : 4.62     Mean   : 0.7   Mean   :NaN   
##  3rd Qu.: 1.1       3rd Qu.: 7.80     3rd Qu.: 0.0   3rd Qu.: NA   
##  Max.   :75.0       Max.   :15.80     Max.   :45.0   Max.   : NA   
##  NA's   :2                            NA's   :376    NA's   :8767  
##       Date     
##  Min.   : NA   
##  1st Qu.: NA   
##  Median : NA   
##  Mean   :NaN   
##  3rd Qu.: NA   
##  Max.   : NA   
##  NA's   :8767
####
## Temperature
#####

mo.per.temp=as.numeric(mo.per$LUFTTEMPERATUR)
ew.per.temp=as.numeric(ew.per$LUFTTEMPERATUR)

MO=summary(mo.per.temp)
EW=summary(ew.per.temp)
s=cbind(MO,EW);s
##            MO    EW
## Min.    -15.8 -18.2
## 1st Qu.   5.2   3.1
## Median   10.2   9.1
## Mean     10.1   8.8
## 3rd Qu.  15.3  14.9
## Max.     28.4  29.1
sd(mo.per.temp)
## [1] 6.898
sd(ew.per.temp,na.rm=TRUE)
## [1] 7.707
par(mfrow=c(2,1))
#plot min, max, average temperatures
plot(mo.ts["2008-12-21::2013-12-21"]$LUFTTEMPERATUR, main="Temperature MS/OS (°C)")
lines(mo.ts["2008-12-21::2013-12-21"]$LUFTTEMPERATUR_MAXIMUM, col="red")
lines(mo.ts["2008-12-21::2013-12-21"]$LUFTTEMPERATUR_MINIMUM, col="blue")

plot(ew.ts["2008-12-21::2013-12-21"]$LUFTTEMPERATUR,main="Temperature EF/WE (°C)")
lines(ew.ts["2008-12-21::2013-12-21"]$LUFTTEMPERATUR_MAXIMUM, col="red")
lines(ew.ts["2008-12-21::2013-12-21"]$LUFTTEMPERATUR_MINIMUM, col="blue")

plot of chunk unnamed-chunk-1

par(mfrow=c(1,1))

#seasonal decompostion of temperatures
mots2=ts(as.numeric(mo.per$LUFTTEMPERATUR),frequency=365)
ewts2=ts(as.numeric(ew.per$LUFTTEMPERATUR),frequency=365)
mo.stl=stl(mots2,s.window=10)
ew.stl=stl(ewts2,s.window=10)
plot(mo.stl)

plot of chunk unnamed-chunk-1

plot(ew.stl)

plot of chunk unnamed-chunk-1

par(mfrow=c(3,1))
plot(mo.stl$time.series[, "trend"], ylab="trend")
lines(ew.stl$time.series[, "trend"], col="red")
plot(mo.stl$time.series[, "seasonal"], ylab="seasonal")
lines(ew.stl$time.series[, "seasonal"], col="red")
plot(mo.stl$time.series[, "remainder"], ylab="remainder")
lines(ew.stl$time.series[, "remainder"], col="red")

plot of chunk unnamed-chunk-1

par(mfrow=c(1,1))
plot(ew.stl$time.series[, "trend"] - mo.stl$time.series[, "trend"], main="Trend Difference")

plot of chunk unnamed-chunk-1

summary(ew.stl$time.series[, "trend"] - mo.stl$time.series[, "trend"])
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  -1.770  -1.490  -1.340  -1.320  -1.160  -0.769
plot(ew.stl$time.series[, "seasonal"] - mo.stl$time.series[, "seasonal"], main="Seasonal Difference")

plot of chunk unnamed-chunk-1

summary(ew.stl$time.series[, "seasonal"] - mo.stl$time.series[, "seasonal"])
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
## -2.8900 -0.7360  0.0557  0.0004  0.7620  2.7200
sd(ew.stl$time.series[, "seasonal"])
## [1] 6.736
sd(mo.stl$time.series[, "seasonal"])
## [1] 5.987
########################
# percipitation
#######################
par(mfrow=c(2,1))
plot(mo.per$NIEDERSCHLAGSHOEHE, main="Precipitation MS/OS (mm)")
plot(ew.per$NIEDERSCHLAGSHOEHE, main="Precipitation EF-WE (mm)")

plot of chunk unnamed-chunk-1

mo.per.ns=as.numeric(mo.per$NIEDERSCHLAGSHOEHE)
ew.per.ns=as.numeric(ew.per$NIEDERSCHLAGSHOEHE)

MO=summary(mo.per.ns)
EW=summary(ew.per.ns)
s=cbind(MO,EW);s
## Warning: number of rows of result is not a multiple of vector length (arg
## 1)
##             MO   EW
## Min.      0.00  0.0
## 1st Qu.   0.00  0.0
## Median    0.10  0.0
## Mean      2.06  1.5
## 3rd Qu.   2.20  1.1
## Max.    140.00 75.0
## NA's      0.00  2.0
sd(mo.per.ns)
## [1] 4.47
sd(ew.per.ns,na.rm=TRUE)
## [1] 3.991
par(mfrow=c(1,1))
plot(mo.per$NIEDERSCHLAGSHOEHE, main="Precipitation MS/OS (black), EF/WE (red) (mm)")
lines(ew.per$NIEDERSCHLAGSHOEHE, col="red")

plot of chunk unnamed-chunk-1

MO=sum(mo.per.ns);MO
## [1] 18037
EW=sum(ew.per.ns, na.rm=TRUE);EW
## [1] 13166
MO*100/EW
## [1] 137
####
# Sunshine duration
#
#####

mo.per.sun=as.numeric(mo.per$SONNENSCHEINDAUER)
ew.per.sun=as.numeric(ew.per$SONNENSCHEINDAUER)
plot(mo.per$SONNENSCHEINDAUER, main="MS/OS sunshine duration (hours)")

plot of chunk unnamed-chunk-1

plot(ew.per$SONNENSCHEINDAUER, main="EF-WE sunshine duration (hours)")

plot of chunk unnamed-chunk-1

MO=summary(mo.per.sun)
EW=summary(ew.per.sun)
s=cbind(MO,EW);s
## Warning: number of rows of result is not a multiple of vector length (arg
## 2)
##            MO    EW
## Min.     0.00  0.00
## 1st Qu.  0.30  0.50
## Median   3.30  3.67
## Mean     4.34  4.62
## 3rd Qu.  7.28  7.80
## Max.    16.20 15.80
## NA's     1.00  0.00
sd(mo.per.sun)
## [1] NA
sd(ew.per.sun,na.rm=TRUE)
## [1] 4.293
par(mfrow=c(1,1))

sun_dur=ts(as.numeric(mo.per$SONNENSCHEINDAUER)-as.numeric(ew.per$SONNENSCHEINDAUER))

plot(sun_dur,main="Sunshine duration difference (hours) between MS/OS and EF-WE")

plot of chunk unnamed-chunk-1

summary(sun_dur)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
## -13.800  -2.000  -0.100  -0.279   1.200  15.500       1
sd(sun_dur,na.rm=TRUE)
## [1] 3.297
summary(sun_dur) 
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
## -13.800  -2.000  -0.100  -0.279   1.200  15.500       1
sum(sun_dur, na.rm=TRUE) 
## [1] -2442
save.image("regional_climate.RData")