Learn R Programming

Rssa (version 0.13-1)

reconstruct: Perform a series reconstruction

Description

Reconstruct the data given the SSA decomposition and the desired grouping of the elementary components.

Usage

"reconstruct"(x, groups, ..., drop.attributes = FALSE, cache = TRUE)

Arguments

x
SSA object
groups
list of numeric vectors, indices of elementary components used for reconstruction, the entries of the list can be named, see 'Value' for more information
...
further arguments passed to routines (e.g. to decompose routine if the continuation is desired).
drop.attributes
logical, if 'TRUE' then the attributes of the input objects are not copied to the reconstructed ones.
cache
logical, if 'TRUE' then intermediate results will be cached in the SSA object.

Value

List of reconstructed objects. Elements of the list have the same names as elements of groups. If the group is unnamed, then corresponding component will obtain name `Fn', where `n' is its index in groups list.

See Also

Rssa for an overview of the package, as well as, ssa-input, ssa, plot.reconstruction,

Examples

Run this code
# Decompose 'co2' series with default parameters
s <- ssa(co2)
# Reconstruct the series, grouping elementary series.
r <- reconstruct(s, groups = list(Trend = c(1, 4), Season1 = c(2,3), Season2 = c(5, 6)))
plot(r)
# 'groups' argument might contain duplicate entries as well
r <- reconstruct(s, groups = list(1, 1:4, 1:6))
plot(r)


# Real example: Mars photo
data(Mars)
# Decompose only Mars image (without backgroud)
s <- ssa(Mars, mask = Mars != 0, wmask = circle(50), kind = "2d-ssa")
# Reconstruct and plot trend
plot(reconstruct(s, 1), fill.uncovered = "original")
# Reconstruct and plot texture pattern
plot(reconstruct(s, groups = list(c(13, 14, 17, 18))))

# Decompose 'EuStockMarkets' series with default parameters
s <- ssa(EuStockMarkets, kind = "mssa")
r <- reconstruct(s, groups = list(Trend = 1:2))
# Plot original series, trend and residuals superimposed
plot(r, plot.method = "xyplot", superpose = TRUE,
     auto.key = list(columns = 3),
     col = c("blue", "green", "red", "violet"),
     lty = c(rep(1, 4), rep(2, 4), rep(3, 4)))

Run the code above in your browser using DataLab