Learn R Programming

NNS (version 0.5.6)

NNS.meboot: NNS meboot

Description

Adapted maximum entropy bootstrap routine from meboot https://cran.r-project.org/package=meboot.

Usage

NNS.meboot(
  x,
  reps = 999,
  setSpearman = NULL,
  drift = TRUE,
  trim = 0.1,
  xmin = NULL,
  xmax = NULL,
  reachbnd = TRUE,
  expand.sd = TRUE,
  force.clt = TRUE,
  scl.adjustment = FALSE,
  sym = FALSE,
  elaps = FALSE,
  colsubj,
  coldata,
  coltimes,
  ...
)

Arguments

x

vector of data, ts object or pdata.frame object.

reps

numeric; number of replicates to generate.

setSpearman

numeric [0,1]; The default setting setSpearman = NULL assumes that the user does not want to generate replicates that are perfectly dependent on original time series, setSpearman=1 recovers the original meboot(...) settings. setSpearman < 1 admits less perfect (more realistic for some purposes) dependence.

drift

logical; TRUE default preserves the drift of the original series.

trim

numeric [0,1]; The mean trimming proportion, defaults to trim=0.1.

xmin

numeric; the lower limit for the left tail.

xmax

numeric; the upper limit for the right tail.

reachbnd

logical; If TRUE potentially reached bounds (xmin = smallest value - trimmed mean and xmax = largest value + trimmed mean) are given when the random draw happens to be equal to 0 and 1, respectively.

expand.sd

logical; If TRUE the standard deviation in the ensemble is expanded. See expand.sd in meboot::meboot.

force.clt

logical; If TRUE the ensemble is forced to satisfy the central limit theorem. See force.clt in meboot::meboot.

scl.adjustment

logical; If TRUE scale adjustment is performed to ensure that the population variance of the transformed series equals the variance of the data.

sym

logical; If TRUE an adjustment is peformed to ensure that the ME density is symmetric.

elaps

logical; If TRUE elapsed time during computations is displayed.

colsubj

numeric; the column in x that contains the individual index. It is ignored if the input data x is not a pdata.frame object.

coldata

numeric; the column in x that contains the data of the variable to create the ensemble. It is ignored if the input data x is not a pdata.frame object.

coltimes

numeric; an optional argument indicating the column that contains the times at which the observations for each individual are observed. It is ignored if the input data x is not a pdata.frame object.

...

possible argument fiv to be passed to expand.sd.

Value

  • x original data provided as input.

  • replicates maximum entropy bootstrap replicates.

  • ensemble average observation over all replicates.

  • xx sorted order stats (xx[1] is minimum value).

  • z class intervals limits.

  • dv deviations of consecutive data values.

  • dvtrim trimmed mean of dv.

  • xmin data minimum for ensemble=xx[1]-dvtrim.

  • xmax data x maximum for ensemble=xx[n]+dvtrim.

  • desintxb desired interval means.

  • ordxx ordered x values.

  • kappa scale adjustment to the variance of ME density.

  • elaps elapsed time.

References

  • Vinod, H.D. and Viole, F. (2020) Arbitrary Spearman's Rank Correlations in Maximum Entropy Bootstrap and Improved Monte Carlo Simulations https://www.ssrn.com/abstract=3621614

  • Vinod, H.D. (2013), Maximum Entropy Bootstrap Algorithm Enhancements. https://www.ssrn.com/abstract=2285041.

  • Vinod, H.D. (2006), Maximum Entropy Ensembles for Time Series Inference in Economics, Journal of Asian Economics, 17(6), pp. 955-978.

  • Vinod, H.D. (2004), Ranking mutual funds using unconventional utility theory and stochastic dominance, Journal of Empirical Finance, 11(3), pp. 353-377.

Examples

Run this code
# NOT RUN {
# To generate an orthogonal rank correlated time-series to AirPassengers
boots <- NNS.meboot(AirPassengers, reps=100, setSpearman = 0, xmin = 0)

# Verify correlation of replicates ensemble to original
cor(boots$ensemble, AirPassengers, method = "spearman")

# Plot all replicates
matplot(boots$replicates, type = 'l')

# Plot ensemble
lines(boots$ensemble, lwd = 3)
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab