Learn R Programming

far (version 0.6-7)

predict.kerfon: Forecasting of functional kernel model

Description

Computation of the prediction based on a functional kernel model

Usage

# S3 method for kerfon
predict(object, ..., newdata=NULL, label, na.rm=TRUE, positive=FALSE)

Value

A fdata object.

Arguments

object

A kerfon object result of the kerfon function.

newdata

A fdata object used in the kerfon model to compute the prediction, or NULL to predict one step forward with the data in object.

label

A vector of character giving the dates to associate to the predicted observations.

na.rm

Logical. Does the n.a. need to be removed.

positive

Logical. Does the result must be forced to positive values.

...

Additional arguments.

Author

J. Damon

Details

This function computes one step forward prediction for a kerfon model.

Use the newdata option to input the past values, and the label option value to define the labels for the new observations. Notices that the output as the same length as newdata.

In some special context, the user may need to suppress the na.rm observations with the na.rm option, or force the prediction to be positive with the positive option (in this case the result will be maximum of 0 and the predicted value).

See Also

kerfon

Examples

Run this code
  # Simulation of a FARX process
  data1 <- simul.farx(m=10,n=400,base=base.simul.far(20,5),
                base.exo=base.simul.far(20,5),
                d.a=matrix(c(0.5,0),nrow=1,ncol=2),
                alpha.conj=matrix(c(0.2,0),nrow=1,ncol=2),
                d.rho=diag(c(0.45,0.90,0.34,0.45)),
                alpha=diag(c(0.5,0.23,0.018)),
                d.rho.exo=diag(c(0.45,0.90,0.34,0.45)),
                cst1=0.0)

  # Cross validation
  model1 <- kerfon(data=data1, x="X", r=10, na.rm=TRUE)
	print(model1)

  # Predicting values
  pred1 <- predict(model1,newdata=select.fdata(data1,date=1:399))
  # Persistence
  persist1 <- pred.persist(select.fdata(data1,date=1:399),x="X")
  # Real values
  real1 <- select.fdata(data1,date=2:400)

  errors0 <- persist1[[1]]-real1[[1]]
  errors1 <- pred1[[1]]-real1[[1]]

  # Norm of observations
  summary(real1)
  # Persistence
  summary(as.fdata(errors0))
  # kerfon model
  summary(as.fdata(errors1))

Run the code above in your browser using DataLab