R/datasets/regression/corRegDataNB_nooutliers.R

Defines functions RegData.DataGenerator corRegDataNB_nooutliers.DataGenerator corRegDataNB_nooutliers.validation

RegData.DataGenerator <- function(dataConf){
    nn <- dataConf$n
    nn <- nn/10
    d  <- dataConf$d
    p  <- dataConf$p
    require("MASS")
    if(nn<=0 || d<=0){
      stop("dimension or sampling number are less than zero")
    }
    mean <- rep(0,d)
    var <- diag(d)
    emean <- rep(0,nn)
    evar <- matrix(rep(p,(nn)^2),nn)+(1-p)*diag(nn)
    coef <- rep(sqrt(3/d),d)
    x<-mvrnorm(nn,mean,var)
    print(x)
    epsilons <- matrix(mvrnorm(1,emean,evar),nn,1)
    print(epsilons)
    y <- x%*%coef+ epsilons
    return(list(x,y))
}


corRegDataNB_nooutliers.DataGenerator<-function(dataConf){
  n <- dataConf$n
  d <- dataConf$d
  p <- dataConf$p
  Datalist1 <- RegData.DataGenerator(dataConf) 
  Datalist2 <- RegData.DataGenerator(dataConf)
  Datalist3 <- RegData.DataGenerator(dataConf)
  Datalist4 <- RegData.DataGenerator(dataConf)
  Datalist5 <- RegData.DataGenerator(dataConf)
  Datalist6 <- RegData.DataGenerator(dataConf)
  Datalist7 <- RegData.DataGenerator(dataConf)
  Datalist8 <- RegData.DataGenerator(dataConf)
  Datalist9 <- RegData.DataGenerator(dataConf)
  Datalist10 <- RegData.DataGenerator(dataConf)
  x <- rbind(Datalist1[[1]],Datalist2[[1]],Datalist3[[1]],Datalist4[[1]],
             Datalist5[[1]],Datalist6[[1]],Datalist7[[1]],
               Datalist8[[1]],Datalist9[[1]],Datalist10[[1]])
  y <- rbind(Datalist1[[2]],Datalist2[[2]],Datalist3[[2]],Datalist4[[2]],
             Datalist5[[2]],Datalist6[[2]],Datalist7[[2]],
               Datalist8[[2]],Datalist9[[2]],Datalist10[[2]])
  return(as.data.frame(cbind(x,y))) 
}
 

corRegDataNB_nooutliers.Prepackages <- c("MASS")

corRegDataNB_nooutliers.validation <- function(dataConf) {
  if(is.null(dataConf$n)) return(FALSE)
  if(is.null(dataConf$d)) return(FALSE)
  if(is.null(dataConf$p)) return(FALSE)
  return(T)
}



comment(corRegDataNB_nooutliers.DataGenerator) <- c("")
RamboWANG/RegularizedCrossValidation documentation built on Oct. 10, 2019, 5:55 a.m.