List.nestorFit.Rd
Run function nestorFit on a list of initial cliques using parallel computation (mclapply)
List.nestorFit( cliqueList, sigma_O, MO, SO, r, alpha = 0.1, cores = 1, maxIter = 20, eps = 0.001, trackJ = FALSE )
cliqueList | List containing all initial cliques to be tested. |
---|---|
sigma_O | Result of PLN estimation: variance covariance matrix of observed data. |
MO | Result of PLN estimation: means matrix of observed data. |
SO | Result of PLN estimation: marginal variances matrix of observed data. |
r | Number of hidden variables. |
alpha | Tempering parameter. |
cores | Number of cores for parallel computation (uses mclapply, not available for Windows). |
maxIter | Maximal number of iterations of the algorithm. |
eps | Convergence precision parameter. |
trackJ | Boolean for the lower bound estimation at each parameter update instead of each step. |
A list containing the fit of nestorFit for every clique contained in cliqueList.
data=generate_missing_data(n=100,p=10,r=1,type="scale-free", plot=FALSE) PLNfit<-norm_PLN(data$Y) MO<-PLNfit$MO SO<-PLNfit$SO sigma_O=PLNfit$sigma_O #-- find a list of initial cliques findcliqueList=boot_FitSparsePCA(MO, B=5, r=1) cliqueList=findcliqueList$cliqueList length(cliqueList)#> [1] 3#> [1] 3#> List of 12 #> $ M : num [1:100, 1:11] 1.099 -0.283 0.442 -0.242 -1.104 ... #> $ S : num [1:100, 1:11] 0.0441 0.124 0.0751 0.1209 0.1907 ... #> $ Pg : num [1:11, 1:11] 0.0 0.0 0.0 3.6e-11 0.0 ... #> $ Wg : num [1:11, 1:11] 0.00 0.00 0.00 1.71e-07 0.00 ... #> $ W : num [1:11, 1:11] 0.00 0.00 0.00 5.82e-07 0.00 ... #> $ Omega : num [1:11, 1:11] 3.664 -0.402 1.341 -0.404 -0.666 ... #> $ lowbound :'data.frame': 21 obs. of 5 variables: #> ..$ J : num [1:21] -638 -613 -571 -546 -540 ... #> ..$ T1 : num [1:21] -984 -958 -912 -885 -877 ... #> ..$ T2 : num [1:21] -1.1597 -0.3514 -0.193 -0.1224 -0.0262 ... #> ..$ T3 : num [1:21] 347 345 342 339 337 ... #> ..$ parameter: chr [1:21] "complete" "complete" "complete" "complete" ... #> $ features :'data.frame': 20 obs. of 4 variables: #> ..$ diffPg : num [1:20] 0.5 0.322 0.687 0.289 0.071 ... #> ..$ diffW : num [1:20] 2430 42547 746791 4198378 33725450 ... #> ..$ diffOmega: num [1:20] 1.357 0.468 0.336 0.388 0.263 ... #> ..$ diffWg : num [1:20] 1.02e+10 5.54e+10 8.84e+13 4.96e+16 4.61e+18 ... #> $ finalIter: num 20 #> $ time : 'difftime' num 0.948529958724976 #> ..- attr(*, "units")= chr "secs" #> $ max.prec : logi FALSE #> $ clique :List of 1 #> ..$ : int [1:7] 1 2 3 5 6 7 10