mgc.sims.cubic {mgc}R Documentation

Cubic Simulation

Description

A function for Generating a cubic simulation.

Usage

mgc.sims.cubic(
  n,
  d,
  eps = 80,
  ind = FALSE,
  a = -1,
  b = 1,
  c.coef = c(-12, 48, 128),
  s = 1/3
)

Arguments

n

the number of samples for the simulation.

d

the number of dimensions for the simulation setting.

eps

the noise level for the simulation. Defaults to 80.

ind

whether to sample x and y independently. Defaults to FALSE.

a

the lower limit for the range of the data matrix. Defaults to -1.

b

the upper limit for the range of the data matrix. Defaults to 1.

c.coef

the coefficients for the cubic function, where the first value is the first order coefficient, the second value the quadratic coefficient, and the third the cubic coefficient. Defaults to c(-12, 48, 128).

s

the scaling for the center of the cubic. Defaults to 1/3.

Value

a list containing the following:

X

[n, d] the data matrix with n samples in d dimensions.

Y

[n] the response array.

Details

Given: w_i = \frac{1}{i} is a weight-vector that scales with the dimensionality. Simulates n points from Linear(X, Y) \in \mathbf{R}^d \times \mathbf{R}, where:

X \sim {U}(a, b)^d

Y = c_3\left(w^TX - s\right)^3 + c_2\left(w^TX - s\right)^2 + c_1\left(w^TX - s\right) + \kappa \epsilon

and \kappa = 1\textrm{ if }d = 1, \textrm{ and 0 otherwise} controls the noise for higher dimensions.

Author(s)

Eric Bridgeford

Examples

library(mgc)
result  <- mgc.sims.cubic(n=100, d=10)  # simulate 100 samples in 10 dimensions
X <- result$X; Y <- result$Y

[Package mgc version 2.0.2 Index]