% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/tempdisagg.R
\name{temporal_interpolation_raw}
\alias{temporal_interpolation_raw}
\title{Interpolation of an Atypical Frequency Series by Regression Models.}
\usage{
temporal_interpolation_raw(
  series,
  constant = TRUE,
  trend = FALSE,
  indicators = NULL,
  startoffset = 0L,
  model = c("Ar1", "Rw", "RwAr1"),
  freqratio,
  obsposition = -1L,
  rho = 0,
  rho.fixed = FALSE,
  rho.truncated = 0,
  zeroinitialization = FALSE,
  diffuse.algorithm = c("SqrtDiffuse", "Diffuse", "Augmented"),
  diffuse.regressors = FALSE,
  nbcsts = 0L,
  nfcsts = 0L
)
}
\arguments{
\item{series}{A low-frequency time series to be interpolated. It must be a numeric vector.}

\item{constant}{Boolean. Indicates whether a constant term is included in the model. The default is \code{TRUE}.
Note that this argument is used only with \code{model = "Ar1"} when \code{zeroinitialization = FALSE}. For additional information, see the package vignette.}

\item{trend}{Boolean. Indicates whether a linear trend is included in the model. The default is \code{FALSE}.}

\item{indicators}{One or more high‑frequency indicator series used in the interpolation.
If \code{NULL} (the default), no indicator is used. When provided, the argument must be a numeric vector or a matrix.}

\item{startoffset}{The number of initial observations in the indicator series that precede the start of the low-frequency series.
The value must be either 0 or a positive integer (default is 0). This argument is ignored when no indicator is provided.}

\item{model}{A character string specifying the model of the error term at the disaggregated level.
The options are: \code{"Ar1"} (Chow Lin, the default), \code{"Rw"} (Fernandez), and \code{"RwAr1"} (Litterman).}

\item{freqratio}{An integer specifying the frequency ratio between the interpolated series and the low-frequency series.
This argument is mandatory and must be a positive integer.}

\item{obsposition}{An integer specifying the position of the low-frequency
observations within the interpolated series (e.g. the 1st month of the
year, the 2d month, etc.). The value must be a positive integer or \code{-1}
(the default).The default value is equivalent to setting the value of the
parameter equal to the frequency of the series, meaning that the last value
of the interpolated series is consistent with the low-frequency series.}

\item{rho}{A numeric value giving the (initial) value of the autoregressive parameter.
This argument is used only for \code{"Ar1"} and \code{"RwAr1"} models.}

\item{rho.fixed}{Boolean. Specifies whether the supplied value of \code{rho} is fixed. The default is \code{FALSE}, which indicates that \code{rho} is estimated.}

\item{rho.truncated}{A numeric value defining the lower bound of the admissible range for \code{rho}.
The evaluation range is \verb{[rho.truncated, 1[}.}

\item{zeroinitialization}{Boolean. If \code{TRUE}, the initial values of the autoregressive model are set to zero. The default is \code{FALSE}.}

\item{diffuse.algorithm}{A character string specifying the algorithm used for diffuse initialization. The default is \code{"SqrtDiffuse"}. Other options are: \code{"Diffuse"} and \code{"Augmented"}.}

\item{diffuse.regressors}{Boolean. Indicates whether the coefficients of the regression model are treated as diffuse (\code{TRUE}) or as fixed unknown (\code{FALSE}, the default).}

\item{nbcsts}{An integer specifying the number of backcast periods.
This argument is ignored when one or more indicator series is provided.}

\item{nfcsts}{An integer specifying the number of forecast periods.
This argument is ignored when one or more indicator series is provided.}
}
\value{
An object of class "JD3_INTERPRAW_RSLTS" is returned. The following are returned
invisibly as a list:
\itemize{
\item \code{regression} \verb{[[1]]} regression coefficients;
\item \code{estimation} \verb{[[2]]} interpolated values and standard deviation, regression effects, smoothing part, parameter and residuals;
\item \code{likelihood} \verb{[[3]]} likelihood statistics.
}
}
\description{
Perform temporal interpolation of low-frequency to high-frequency time series
by regression models. The implemented models include Chow-Lin, Fernandez,
Litterman and some variants of those algorithms. The
\code{temporal_interpolation_raw()} function extends \code{temporal_interpolation()} by
allowing temporal interpolation for any frequency ratio.
}
\examples{
\dontshow{if (rjd3toolkit::get_java_version() >= rjd3toolkit::minimal_java_version) withAutoprint(\{ # examplesIf}
# Use of Chow-lin method to interpolate a biennial series with an annual
# indicator (the low-frequency series is consistent with the last value of the
# interpolated series)
Y <- stats::aggregate(rjd3toolkit::Retail$RetailSalesTotal, 0.5)
x <- stats::aggregate(rjd3toolkit::Retail$FoodAndBeverageStores, 1)
ti <- temporal_interpolation_raw(as.numeric(Y), indicators = as.numeric(x), freqratio = 2)
ti$estimation$interp

# Use of Fernandez method to interpolate a series without indicator
# considering a frequency ratio of 5 (the low-frequency series is consistent
# with the last value of the interpolated series). For example, Y2 could be a
# quinquennial series to interpolate annually.
Y2 <- c(500,510,525,520)
ti2 <- temporal_interpolation_raw(Y2, model = "Rw", freqratio = 5, nbcsts = 1, nfcsts = 2)
ti2$estimation$interp

# Same with an indicator, considering an offset in the latter
Y2 <- c(500,510,525,520)
x2 <- c(485,
        490, 492.5, 497.5, 520, 495,
        500, 502.5, 505, 527.5, 515,
        522.5, 517.5, 522.5, 545, 520,
        535, 515, 540, 565, 550)
ti3 <- temporal_interpolation_raw(Y2, indicators = x2, startoffset = 1, model = "Rw", freqratio = 5)
ti3$estimation$interp

# Same considering that the first value of the interpolated series is the one
# consistent with the low-frequency series
ti4 <- temporal_interpolation_raw(Y2, indicators = x2, startoffset = 1,
                                  model = "Rw", freqratio = 5, obsposition = 1)
ti4$estimation$interp
\dontshow{\}) # examplesIf}
}
\seealso{
\code{temporal_disaggregation_raw()}

For more information, see the vignette:

\code{utils::browseVignettes()}, e.g. \code{browseVignettes(package = "rjd3bench")}
}
