Last data update: 2014.03.03
R: Prediction of a 'PrecipitationOccurenceModel' model object
predict.PrecipitationOccurenceModel R Documentation
Prediction of a PrecipitationOccurenceModel
model object
Description
It is a wrapper of predict.glm
method for the
a PrecipitationOccurenceModel
model object S3 class.
Usage
## S3 method for class 'PrecipitationOccurenceModel'
predict(object, newdata = NULL,
type = "response", previous = NULL, endogenous = NULL, ...)
## S3 method for class 'PrecipitationOccurenceMultiSiteModel'
predict(object, ...)
## S3 method for class 'PrecipitationAmountModel'
predict(object, newdata = NULL,
origin_newdata = NA, precipitation.value.random.generation = FALSE, ...)
Arguments
object
model returned by
PrecipitationOccurenceModel
newdata
predictor or exogenous variables
type
see predict.glm
. Default is
"response"
. See predict.glm
.
previous
logical vector containing previously
occurred states.
endogenous
String vector containing the name of
the endogenous variables. It is used if the endogenous
variables are more than one, otherwise is set
NULL
(Default).
...
further arguments
origin_newdata
character string containing the
date corresponding the first row of newdata
precipitation.value.random.generation
logical
value. If it is FALSE
(Default) the method
predict.PrecipitationAmountModel
returns
conditioned random values, otherwise these values are
converted to precipitation values through their observed
non-parametric distributions.
See Also
predict.glm
,PrecipitationOccurenceModel
predict.glm
,predict.glm
,PrecipitationOccurenceModel
,PrecipitationAmountModel
Examples
library(RGENERATEPREC)
data(trentino)
year_min <- 1961
year_max <- 1990
period <- PRECIPITATION$year>=year_min & PRECIPITATION$year<=year_max
period_temp <- TEMPERATURE_MAX$year>=year_min & TEMPERATURE_MAX$year<=year_max
prec_mes <- PRECIPITATION[period,]
Tx_mes <- TEMPERATURE_MAX[period_temp,]
Tn_mes <- TEMPERATURE_MIN[period_temp,]
accepted <- array(TRUE,length(names(prec_mes)))
names(accepted) <- names(prec_mes)
for (it in names(prec_mes)) {
acc <- TRUE
acc <- (length(which(!is.na(Tx_mes[,it])))==length(Tx_mes[,it]))
acc <- (length(which(!is.na(Tn_mes[,it])))==length(Tn_mes[,it])) & acc
accepted[it] <- (length(which(!is.na(prec_mes[,it])))==length(prec_mes[,it])) & acc
}
valmin <- 1.0
prec_mes <- prec_mes[,accepted]
Tx_mes <- Tx_mes[,accepted]
Tn_mes <- Tn_mes[,accepted]
origin <- paste(year_min,1,1,sep="-")
prec_occurence_mes <- prec_mes>=valmin
station <- names(prec_mes)[!(names(prec_mes) %in% c("day","month","year"))]
it <- station[2]
vect <- Tx_mes[,it]-Tn_mes[,it]
months <- factor(prec_mes$month)
model <- PrecipitationOccurenceModel(x=prec_mes[,it],exogen=vect,monthly.factor=months)
probs <- predict(model)
nday <- 3.0
vect_new <- array(1.0,nday)
months_new <- array(1,nday)
row_test <- 2000:2007
newdata <- model$predictor[row_test,]
probs2 <- predict(model,newdata=newdata)
probs[row_test]==probs2
###
prec_occurence_mes <- prec_mes>=valmin
station <- names(prec_mes)[!(names(prec_mes) %in% c("day","month","year"))]
station <- station[1:4] ## reduced the dataset!!!
Tx_mes <- Tx_mes[,station]
Tn_mes <- Tn_mes[,station]
prec_mes <- prec_mes[,station]
exogen <- Tx_mes-Tn_mes
months <- factor(prec_mes$month)
### Not Run
### Please uncomment the following lines to run them
#model_multisite <- PrecipitationOccurenceMultiSiteModel(x=prec_mes,
#exogen=exogen,origin=origin,multisite_type="wilks")
#
#
#model_multisite_logit <- PrecipitationOccurenceMultiSiteModel(x=prec_mes,
#exogen=exogen,origin=origin,multisite_type="logit")
#
#
#probs_multimodel <- predict(model_multisite_logit)
Results
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(RGENERATEPREC)
Loading required package: copula
Loading required package: RGENERATE
Loading required package: RMAWGEN
Loading required package: chron
Loading required package: date
Loading required package: vars
Loading required package: MASS
Loading required package: strucchange
Loading required package: zoo
Attaching package: 'zoo'
The following objects are masked from 'package:base':
as.Date, as.Date.numeric
Loading required package: sandwich
Loading required package: urca
Loading required package: lmtest
Attaching package: 'vars'
The following object is masked from 'package:copula':
A
Loading required package: blockmatrix
Loading required package: Matrix
Loading required package: stringr
Attaching package: 'stringr'
The following object is masked from 'package:strucchange':
boundary
> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/RGENERATEPREC/predict.Rd_%03d_medium.png", width=480, height=480)
> ### Name: predict.PrecipitationOccurenceModel
> ### Title: Prediction of a 'PrecipitationOccurenceModel' model object
> ### Aliases: predict predict.PrecipitationAmountModel
> ### predict.PrecipitationOccurenceModel
> ### predict.PrecipitationOccurenceMultiSiteModel
>
> ### ** Examples
>
> library(RGENERATEPREC)
>
> data(trentino)
>
> year_min <- 1961
> year_max <- 1990
>
> period <- PRECIPITATION$year>=year_min & PRECIPITATION$year<=year_max
> period_temp <- TEMPERATURE_MAX$year>=year_min & TEMPERATURE_MAX$year<=year_max
>
> prec_mes <- PRECIPITATION[period,]
> Tx_mes <- TEMPERATURE_MAX[period_temp,]
> Tn_mes <- TEMPERATURE_MIN[period_temp,]
> accepted <- array(TRUE,length(names(prec_mes)))
> names(accepted) <- names(prec_mes)
> for (it in names(prec_mes)) {
+ acc <- TRUE
+ acc <- (length(which(!is.na(Tx_mes[,it])))==length(Tx_mes[,it]))
+ acc <- (length(which(!is.na(Tn_mes[,it])))==length(Tn_mes[,it])) & acc
+ accepted[it] <- (length(which(!is.na(prec_mes[,it])))==length(prec_mes[,it])) & acc
+
+ }
>
> valmin <- 1.0
> prec_mes <- prec_mes[,accepted]
>
>
>
> Tx_mes <- Tx_mes[,accepted]
> Tn_mes <- Tn_mes[,accepted]
> origin <- paste(year_min,1,1,sep="-")
>
>
> prec_occurence_mes <- prec_mes>=valmin
>
> station <- names(prec_mes)[!(names(prec_mes) %in% c("day","month","year"))]
> it <- station[2]
> vect <- Tx_mes[,it]-Tn_mes[,it]
> months <- factor(prec_mes$month)
> model <- PrecipitationOccurenceModel(x=prec_mes[,it],exogen=vect,monthly.factor=months)
>
> probs <- predict(model)
>
> nday <- 3.0
> vect_new <- array(1.0,nday)
> months_new <- array(1,nday)
> row_test <- 2000:2007
> newdata <- model$predictor[row_test,]
> probs2 <- predict(model,newdata=newdata)
>
> probs[row_test]==probs2
2000 2001 2002 2003 2004 2005 2006 2007
TRUE TRUE TRUE TRUE TRUE TRUE FALSE TRUE
> ###
>
>
>
>
>
> prec_occurence_mes <- prec_mes>=valmin
>
> station <- names(prec_mes)[!(names(prec_mes) %in% c("day","month","year"))]
>
> station <- station[1:4] ## reduced the dataset!!!
> Tx_mes <- Tx_mes[,station]
> Tn_mes <- Tn_mes[,station]
>
> prec_mes <- prec_mes[,station]
> exogen <- Tx_mes-Tn_mes
> months <- factor(prec_mes$month)
>
>
> ### Not Run
> ### Please uncomment the following lines to run them
>
>
> #model_multisite <- PrecipitationOccurenceMultiSiteModel(x=prec_mes,
> #exogen=exogen,origin=origin,multisite_type="wilks")
> #
> #
> #model_multisite_logit <- PrecipitationOccurenceMultiSiteModel(x=prec_mes,
> #exogen=exogen,origin=origin,multisite_type="logit")
> #
> #
> #probs_multimodel <- predict(model_multisite_logit)
>
>
>
>
>
> dev.off()
null device
1
>