Back to Multiple platform build/check report for BioC 3.8
ABCDEFGHIJKLM[N]OPQRSTUVWXYZ

CHECK report for netresponse on malbec1

This page was generated on 2019-04-16 11:48:59 -0400 (Tue, 16 Apr 2019).

Package 1052/1649HostnameOS / ArchINSTALLBUILDCHECKBUILD BIN
netresponse 1.42.0
Leo Lahti
Snapshot Date: 2019-04-15 17:01:12 -0400 (Mon, 15 Apr 2019)
URL: https://git.bioconductor.org/packages/netresponse
Branch: RELEASE_3_8
Last Commit: e9b9422
Last Changed Date: 2018-10-30 11:41:46 -0400 (Tue, 30 Oct 2018)
malbec1 Linux (Ubuntu 16.04.6 LTS) / x86_64  OK  OK [ WARNINGS ]UNNEEDED, same version exists in internal repository
merida1 OS X 10.11.6 El Capitan / x86_64  OK  OK  WARNINGS  OK UNNEEDED, same version exists in internal repository

Summary

Package: netresponse
Version: 1.42.0
Command: /home/biocbuild/bbs-3.8-bioc/R/bin/R CMD check --install=check:netresponse.install-out.txt --library=/home/biocbuild/bbs-3.8-bioc/R/library --no-vignettes --timings netresponse_1.42.0.tar.gz
StartedAt: 2019-04-16 01:45:50 -0400 (Tue, 16 Apr 2019)
EndedAt: 2019-04-16 01:49:38 -0400 (Tue, 16 Apr 2019)
EllapsedTime: 227.2 seconds
RetCode: 0
Status:  WARNINGS 
CheckDir: netresponse.Rcheck
Warnings: 1

Command output

##############################################################################
##############################################################################
###
### Running command:
###
###   /home/biocbuild/bbs-3.8-bioc/R/bin/R CMD check --install=check:netresponse.install-out.txt --library=/home/biocbuild/bbs-3.8-bioc/R/library --no-vignettes --timings netresponse_1.42.0.tar.gz
###
##############################################################################
##############################################################################


* using log directory ‘/home/biocbuild/bbs-3.8-bioc/meat/netresponse.Rcheck’
* using R version 3.5.3 (2019-03-11)
* using platform: x86_64-pc-linux-gnu (64-bit)
* using session charset: UTF-8
* using option ‘--no-vignettes’
* checking for file ‘netresponse/DESCRIPTION’ ... OK
* checking extension type ... Package
* this is package ‘netresponse’ version ‘1.42.0’
* checking package namespace information ... OK
* checking package dependencies ... OK
* checking if this is a source package ... OK
* checking if there is a namespace ... OK
* checking for hidden files and directories ... OK
* checking for portable file names ... OK
* checking for sufficient/correct file permissions ... OK
* checking whether package ‘netresponse’ can be installed ... OK
* checking installed package size ... OK
* checking package directory ... OK
* checking DESCRIPTION meta-information ... OK
* checking top-level files ... OK
* checking for left-over files ... OK
* checking index information ... OK
* checking package subdirectories ... OK
* checking R files for non-ASCII characters ... OK
* checking R files for syntax errors ... OK
* checking whether the package can be loaded ... OK
* checking whether the package can be loaded with stated dependencies ... OK
* checking whether the package can be unloaded cleanly ... OK
* checking whether the namespace can be loaded with stated dependencies ... OK
* checking whether the namespace can be unloaded cleanly ... OK
* checking dependencies in R code ... OK
* checking S3 generic/method consistency ... OK
* checking replacement functions ... OK
* checking foreign function calls ... OK
* checking R code for possible problems ... OK
* checking Rd files ... OK
* checking Rd metadata ... OK
* checking Rd cross-references ... OK
* checking for missing documentation entries ... OK
* checking for code/documentation mismatches ... OK
* checking Rd \usage sections ... OK
* checking Rd contents ... OK
* checking for unstated dependencies in examples ... OK
* checking contents of ‘data’ directory ... OK
* checking data for non-ASCII characters ... OK
* checking data for ASCII and uncompressed saves ... OK
* checking line endings in C/C++/Fortran sources/headers ... OK
* checking line endings in Makefiles ... OK
* checking compilation flags in Makevars ... OK
* checking for GNU extensions in Makefiles ... OK
* checking for portable use of $(BLAS_LIBS) and $(LAPACK_LIBS) ... OK
* checking compiled code ... NOTE
File ‘netresponse/libs/netresponse.so’:
  Found ‘rand’, possibly from ‘rand’ (C)
    Object: ‘netresponse.o’
  Found ‘srand’, possibly from ‘srand’ (C)
    Object: ‘netresponse.o’

Compiled code should not call entry points which might terminate R nor
write to stdout/stderr instead of to the console, nor use Fortran I/O
nor system RNGs.

See ‘Writing portable packages’ in the ‘Writing R Extensions’ manual.
* checking files in ‘vignettes’ ... WARNING
Files in the 'vignettes' directory but no files in 'inst/doc':
  ‘NetResponse.Rmd’, ‘NetResponse.md’, ‘TODO/TODO.Rmd’,
    ‘fig/NetResponse2-1.png’, ‘fig/NetResponse2b-1.png’,
    ‘fig/NetResponse3-1.png’, ‘fig/NetResponse4-1.png’,
    ‘fig/NetResponse5-1.png’, ‘fig/NetResponse7-1.png’,
    ‘fig/vdp-1.png’, ‘main.R’, ‘netresponse.bib’, ‘netresponse.pdf’
Package has no Sweave vignette sources and no VignetteBuilder field.
* checking examples ... OK
Examples with CPU or elapsed time > 5s
                        user system elapsed
ICMg.combined.sampler 44.748  0.012   46.75
* checking for unstated dependencies in ‘tests’ ... OK
* checking tests ...
  Running ‘ICMg.test.R’
  Running ‘bicmixture.R’
  Running ‘mixture.model.test.R’
  Running ‘mixture.model.test.multimodal.R’
  Running ‘mixture.model.test.singlemode.R’
  Running ‘timing.R’
  Running ‘toydata2.R’
  Running ‘validate.netresponse.R’
  Running ‘validate.pca.basis.R’
  Running ‘vdpmixture.R’
 OK
* checking PDF version of manual ... OK
* DONE

Status: 1 WARNING, 1 NOTE
See
  ‘/home/biocbuild/bbs-3.8-bioc/meat/netresponse.Rcheck/00check.log’
for details.



Installation output

netresponse.Rcheck/00install.out

##############################################################################
##############################################################################
###
### Running command:
###
###   /home/biocbuild/bbs-3.8-bioc/R/bin/R CMD INSTALL netresponse
###
##############################################################################
##############################################################################


* installing to library ‘/home/biocbuild/bbs-3.8-bioc/R/library’
* installing *source* package ‘netresponse’ ...
** libs
gcc -I"/home/biocbuild/bbs-3.8-bioc/R/include" -DNDEBUG   -I/usr/local/include   -fpic  -g -O2  -Wall -c netresponse.c -o netresponse.o
netresponse.c: In function ‘mHPpost’:
netresponse.c:264:15: warning: unused variable ‘prior_fields’ [-Wunused-variable]
   const char *prior_fields[]={"Mumu","S2mu",
               ^
netresponse.c: In function ‘mLogLambda’:
netresponse.c:713:3: warning: ‘U_p’ may be used uninitialized in this function [-Wmaybe-uninitialized]
   vdp_mk_log_lambda(Mumu, S2mu, Mubar, Mutilde, 
   ^
netresponse.c:713:3: warning: ‘KsiBeta’ may be used uninitialized in this function [-Wmaybe-uninitialized]
netresponse.c:713:3: warning: ‘KsiAlpha’ may be used uninitialized in this function [-Wmaybe-uninitialized]
netresponse.c:713:3: warning: ‘BetaKsi’ may be used uninitialized in this function [-Wmaybe-uninitialized]
netresponse.c:713:3: warning: ‘AlphaKsi’ may be used uninitialized in this function [-Wmaybe-uninitialized]
netresponse.c:713:3: warning: ‘Mutilde’ may be used uninitialized in this function [-Wmaybe-uninitialized]
netresponse.c:713:3: warning: ‘Mubar’ may be used uninitialized in this function [-Wmaybe-uninitialized]
netresponse.c:713:3: warning: ‘S2mu’ may be used uninitialized in this function [-Wmaybe-uninitialized]
netresponse.c:713:3: warning: ‘Mumu’ may be used uninitialized in this function [-Wmaybe-uninitialized]
gcc -shared -L/home/biocbuild/bbs-3.8-bioc/R/lib -L/usr/local/lib -o netresponse.so netresponse.o -L/home/biocbuild/bbs-3.8-bioc/R/lib -lR
installing to /home/biocbuild/bbs-3.8-bioc/R/library/netresponse/libs
** R
** data
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (netresponse)

Tests output

netresponse.Rcheck/tests/bicmixture.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> # 1. vdp.mixt: moodien loytyminen eri dimensiolla, naytemaarilla ja komponenteilla
> #   -> ainakin nopea check
> 
> #######################################################################
> 
> # Generate random data from five Gaussians. 
> # Detect modes with vdp-gm. 
> # Plot data points and detected clusters with variance ellipses
> 
> #######################################################################
> 
> library(netresponse)
Loading required package: Rgraphviz
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min

Loading required package: grid
Loading required package: minet
Loading required package: mclust
Package 'mclust' version 5.4.3
Type 'citation("mclust")' for citing this R package in publications.
Loading required package: reshape2

netresponse (C) 2008-2016 Leo Lahti et al.

https://github.com/antagomir/netresponse
> #source("˜/Rpackages/netresponse/netresponse/R/detect.responses.R")
> #source("˜/Rpackages/netresponse/netresponse/R/internals.R")
> #source("˜/Rpackages/netresponse/netresponse/R/vdp.mixt.R")
> #dyn.load("/home/tuli/Rpackages/netresponse/netresponse/src/netresponse.so")
> 
> #########  Generate DATA #############################################
> 
> # Generate Nc components from normal-inverseGamma prior
> 
> set.seed(12346)
> 
> dd <- 3   # Dimensionality of data
> Nc <- 5   # Number of components
> Ns <- 200 # Number of data points
> sd0 <- 3  # component spread
> rgam.shape = 2 # parameters for Gamma distribution 
> rgam.scale = 2 # parameters for Gamma distribution to define precisions
> 
> 
> # Generate means and variances (covariance diagonals) for the components 
> component.means <- matrix(rnorm(Nc*dd, mean = 0, sd = sd0), nrow = Nc, ncol = dd)
> component.vars <- matrix(1/rgamma(Nc*dd, shape = rgam.shape, scale = rgam.scale), 
+ 	                 nrow = Nc, ncol = dd)
> component.sds <- sqrt(component.vars)
> 
> 
> # Size for each component -> sample randomly for each data point from uniform distr.
> # i.e. cluster assignments
> sample2comp <- sample.int(Nc, Ns, replace = TRUE)
> 
> D <- array(NA, dim = c(Ns, dd))
> for (i in 1:Ns)  {
+     # component identity of this sample
+     ci <- sample2comp[[i]]
+     cm <- component.means[ci,]
+     csd <- component.sds[ci,]
+     D[i,] <- rnorm(dd, mean = cm, sd = csd)
+ }
> 
> 
> ######################################################################
> 
> # Fit mixture model
> out <- mixture.model(D, mixture.method = "bic")
> 
> # FIXME rowmeans(qofz) is constant but not 1
> #qofz <- P.r.s(t(D), list(mu = out$mu, sd = out$sd, w = out$w), log = FALSE)
> 
> ############################################################
> 
> # Compare input data and results
> 
> ord.out <- order(out$mu[,1])
> ord.in <- order(component.means[,1])
> 
> means.out <- out$mu[ord.out,]
> means.in <- component.means[ord.in,]
> 
> # Cluster stds and variances
> sds.out <- out$sd[ord.out,]
> sds.in  <- sqrt(component.vars[ord.in,])
> 
> # -----------------------------------------------------------
> 
> vars.out <- sds.out^2
> vars.in <- sds.in^2
> 
> # Check correspondence between input and output
> if (length(means.in) == length(means.out)) {
+    cm <- cor(as.vector(means.in), as.vector(means.out))
+    csd <- cor(as.vector(sds.in), as.vector(sds.out))
+ }
> 
> # Plot results (assuming 2D)
> 
> ran <- range(c(as.vector(means.in - 2*vars.in), 
+                as.vector(means.in + 2*vars.in), 
+ 	       as.vector(means.out + 2*vars.out), 
+ 	       as.vector(means.out - 2*vars.out)))
> 
> plot(D, pch = 20, main = paste("Cor.means:", round(cm,3), "/ Cor.sds:", round(csd,3)), xlim = ran, ylim = ran) 
> for (ci in 1:nrow(means.out))  { add.ellipse(centroid = means.out[ci,], covmat = diag(vars.out[ci,]), col = "red") }
> for (ci in 1:nrow(means.in))  { add.ellipse(centroid = means.in[ci,], covmat = diag(vars.in[ci,]), col = "blue") }
> 
> ######################################################
> 
> #for (ci in 1:nrow(means.out))  {
> #    points(means.out[ci,1], means.out[ci,2], col = "red", pch = 19)
> #    el <- ellipse(matrix(c(vars.out[ci,1],0,0,vars.out[ci,2]),2), centre = means.out[ci,])
> #    lines(el, col = "red") 						  
> #}
> 
> #for (ci in 1:nrow(means.in))  {
> #    points(means.in[ci,1], means.in[ci,2], col = "blue", pch = 19)
> #    el <- ellipse(matrix(c(vars.in[ci,1],0,0,vars.in[ci,2]),2), centre = means.in[ci,])
> #    lines(el, col = "blue") 						  
> #}
> 
> 
> 
> 
> 
> 
> proc.time()
   user  system elapsed 
  3.032   0.124   3.160 

netresponse.Rcheck/tests/ICMg.test.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> # Test script for the ICMg method
> 
> # Load the package
> library(netresponse)
Loading required package: Rgraphviz
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min

Loading required package: grid
Loading required package: minet
Loading required package: mclust
Package 'mclust' version 5.4.3
Type 'citation("mclust")' for citing this R package in publications.
Loading required package: reshape2

netresponse (C) 2008-2016 Leo Lahti et al.

https://github.com/antagomir/netresponse
> 
> data(osmo) # Load data
> 
> # Set parameters
> C.boost = 1
> alpha = 10
> beta = 0.01
> B.num = 10
> B.size = 10
> S.num = 10  
> S.size = 10
> C = 24
> pm0 = 0
> V0 = 1               
> V = 0.1
> 
> # Run combined ICMg sampler
> res = ICMg.combined.sampler(osmo$ppi, osmo$exp, C, alpha, beta, pm0, V0, V, B.num, B.size, S.num, S.size, C.boost) 
Sampling ICMg2...

nodes:10250links:1711observations:133components:24alpha:10beta:0.01

Sampling200iterationcs

Burnin iterations:100

I: 0

n(z):441414426439423413397426400454443390451445435439406415412421425426448461

m(z):698258637678806473856774859061617964707072626068

I:10

convL:-0.497591477067631n(z):4365923272204821922251582223404258443542446399251446419251185411416308792

convN:-0.00918563062733955m(z):849040531295752155558970569940102356640425646709194

I:20

convL:-0.443873895606789n(z):4645182362036532192501752228432248493582369283285420366261174371398248797

convN:-0.00516009622096232m(z):8595395413554581585485695810344103415737475646609083

I:30

convL:-0.39546372281547n(z):4684541931997203012292001200470198441623288279283407354253123276417259814

convN:-0.00488059067243957m(z):8495405313453581615084685810349104385637466348599080

I:40

convL:-0.40295879119315n(z):5034431511758043042402054207428189458581235271313439342272142270401259769

convN:-0.00583158043834249m(z):82983354139555715641776658100491043554355467485811081

I:50

convL:-0.355833971657372n(z):4524651481778792862422071195420187410556247231334393354248156230385291893

convN:-0.00581333237686656m(z):82913654139535816342746557108561033449375469435810779

I:60

convL:-0.343863427107044n(z):4103401282128832772152084218419188423634305224307409356230151251420276890

convN:-0.00177439863994762m(z):82943654139545816242746557104561033449365568435810880

I:70

convL:-0.349154403412837n(z):41533811417010042762132011203417195421658324231299415367228150261399266875

convN:-0.000770085543280202m(z):82943654139545816242746557104561033449365568435810880

I:80

convL:-0.35208126332197n(z):43434313819710252812301999207400193334642317229317399355222153276396236927

convN:-0.00278103996692659m(z):82953654138545816243746357103561033449375669435810780

I:90

convL:-0.347164005155338n(z):38038814719510872822301924213388212299600364239318369338230165278429234941

convN:-0.00549744503084983m(z):82963655139545816243736357103561033449375272435810680

I:100

convL:-0.342554005994877n(z):37135714818711872742751857187373199283589370215321374355208170326422248954

convN:-0.00104482825137943m(z):82933655140545816443716357104551033450375272435810780

Sample iterations:100

I:110

convL:-0.343449572261599n(z):39336015519412242672791824182345208292608374209310361333196178330412246970

convN:-0.00447514571156377m(z):83943654139535816543716357105551033450375272435810779

I:120

convL:-0.332763178014782n(z):37835113522012492492861845209279205261647378191337378334209165327392226999

convN:-0.0026936120162129m(z):82953655140545816543676357104551043450375271435810682

I:130

convL:-0.332622844594417n(z):410374140187126226625818082053141852316383911943083803492161673373862271017

convN:-0.00217038049195593m(z):83963654140545816343676357104551033450375272435810782

I:140

convL:-0.331740734024508n(z):389371143206132224330017092072861932336514112192953623452181453473772321046

convN:-0.0017903534132878m(z):83943654139545816543676257105551013450375272436110782

I:150

convL:-0.331403495414422n(z):394351153180131825026916922032562062036444512072813563362281663174022411146

convN:-0.00350718803334746m(z):83873654140555816743666257109551013450375272436110980

I:160

convL:-0.310607006851297n(z):414348162180134725529416702112241701706654382003183573462171823114122591100

convN:-0.00208384126656576m(z):82883654139545817743596257109541013550375570436110978

I:170

convL:-0.318296407893835n(z):382351151205129925227817051902121771877444421933173433502331853174162431078

convN:-0.00529715048569005m(z):83883754140545817643596257109541013450375272436110879

I:180

convL:-0.337147058508026n(z):394373134184140926127816461782481921826604501862893643342271813434142621061

convN:-0.00441452190610385m(z):83893654139535818643506257111561013547375272436110977

I:190

convL:-0.334568461516789n(z):339362116182135828025317021772181881896534241803083383412421833714263451075

convN:-0.000616339811025395m(z):83903754141525818343496257112551013447375569436110979

I:200

convL:-0.313937693839986n(z):368359130179134126726716571941901791677114301713163663462481773663953461080

convN:-0.00679314559503325m(z):82893754140515818543486257112561013448375570436110979

DONE

> 
> # Compute component membership probabilities for the data points
> res$comp.memb <- ICMg.get.comp.memberships(osmo$ppi, res)
> 
> # Compute (hard) clustering for nodes
> res$clustering <- apply(res$comp.memb, 2, which.max)
> 
> proc.time()
   user  system elapsed 
  9.328   0.148   9.487 

netresponse.Rcheck/tests/mixture.model.test.multimodal.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(netresponse)
Loading required package: Rgraphviz
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min

Loading required package: grid
Loading required package: minet
Loading required package: mclust
Package 'mclust' version 5.4.3
Type 'citation("mclust")' for citing this R package in publications.
Loading required package: reshape2

netresponse (C) 2008-2016 Leo Lahti et al.

https://github.com/antagomir/netresponse
> 
> # Three MODES
> 
> # set.seed(34884)
> set.seed(3488400)
> 
> Ns <- 200
> Nd <- 2
> 
> D3 <- rbind(matrix(rnorm(Ns*Nd, mean = 0), ncol = Nd), 
+       	    matrix(rnorm(Ns*Nd, mean = 3), ncol = Nd),
+       	    cbind(rnorm(Ns, mean = -3), rnorm(Ns, mean = 3))
+ 	    )
> 
> #X11()
> par(mfrow = c(2,2))
> for (mm in c("vdp", "bic")) {
+   for (pp in c(FALSE, TRUE)) {
+ 
+     # Fit nonparametric Gaussian mixture model
+     out <- mixture.model(D3, mixture.method = mm, pca.basis = pp)
+     plot(D3, col = apply(out$qofz, 1, which.max), main = paste(mm, "/ pca:",  pp)) 
+ 
+   }
+ }
> 
> # VDP is less sensitive than BIC in detecting Gaussian modes (more
> # separation between the clusters needed)
> 
> # pca.basis option is less important for sensitive detection but
> # it will help to avoid overfitting to unimodal features that
> # are not parallel to the axes (unimodal distribution often becomes
> # splitted in two or more clusters in these cases)
> 
> 
> proc.time()
   user  system elapsed 
  5.216   0.108   5.320 

netresponse.Rcheck/tests/mixture.model.test.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> # Validate mixture models
> 
> # Generate random data from five Gaussians. 
> # Detect modes 
> # Plot data points and detected clusters 
> 
> library(netresponse)
Loading required package: Rgraphviz
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min

Loading required package: grid
Loading required package: minet
Loading required package: mclust
Package 'mclust' version 5.4.3
Type 'citation("mclust")' for citing this R package in publications.
Loading required package: reshape2

netresponse (C) 2008-2016 Leo Lahti et al.

https://github.com/antagomir/netresponse
> 
> #fs <- list.files("˜/Rpackages/netresponse/netresponse/R/", full.names = TRUE); for (f in fs) {source(f)}; dyn.load("/home/tuli/Rpackages/netresponse/netresponse/src/netresponse.so")
> 
> #########  Generate DATA #######################
> 
> res <- generate.toydata()
> D <- res$data
> component.means <- res$means
> component.sds   <- res$sds
> sample2comp     <- res$sample2comp
> 
> ######################################################################
> 
> par(mfrow = c(2,1))
> 
> for (mm in c("vdp", "bic")) {
+ 
+   # Fit nonparametric Gaussian mixture model
+   #source("˜/Rpackages/netresponse/netresponse/R/vdp.mixt.R")
+   out <- mixture.model(D, mixture.method = mm, max.responses = 10, pca.basis = FALSE)
+ 
+   ############################################################
+ 
+   # Compare input data and results
+ 
+   ord.out <- order(out$mu[,1])
+   ord.in <- order(component.means[,1])
+ 
+   means.out <- out$mu[ord.out,]
+   means.in <- component.means[ord.in,]
+ 
+   # Cluster stds and variances
+   sds.out <- out$sd[ord.out,]
+   vars.out <- sds.out^2
+ 
+   sds.in  <- component.sds[ord.in,]
+   vars.in <- sds.in^2
+ 
+   # Check correspondence between input and output
+   if (length(means.in) == length(means.out)) {
+     cm <- cor(as.vector(means.in), as.vector(means.out))
+     csd <- cor(as.vector(sds.in), as.vector(sds.out))
+   }
+ 
+   # Plot results (assuming 2D)
+   ran <- range(c(as.vector(means.in - 2*vars.in), 
+                as.vector(means.in + 2*vars.in), 
+ 	       as.vector(means.out + 2*vars.out), 
+ 	       as.vector(means.out - 2*vars.out)))
+ 
+   real.modes <- sample2comp
+   obs.modes <- apply(out$qofz, 1, which.max)
+ 
+   # plot(D, pch = 20, main = paste(mm, "/ cor.means:", round(cm,6), "/ Cor.sds:", round(csd,6)), xlim = ran, ylim = ran) 
+   plot(D, pch = real.modes, col = obs.modes, main = paste(mm, "/ cor.means:", round(cm,6), "/ Cor.sds:", round(csd,6)), xlim = ran, ylim = ran) 
+   for (ci in 1:nrow(means.out))  { add.ellipse(centroid = means.out[ci,], covmat = diag(vars.out[ci,]), col = "red") }
+   for (ci in 1:nrow(means.in))  { add.ellipse(centroid = means.in[ci,], covmat = diag(vars.in[ci,]), col = "blue") }
+ 
+ }
> 
> 
> proc.time()
   user  system elapsed 
  2.864   0.108   2.971 

netresponse.Rcheck/tests/mixture.model.test.singlemode.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> 
> skip <- FALSE
> 
> if (!skip) {
+ 
+ library(netresponse)
+ 
+ # SINGLE MODE
+ 
+ # Produce test data that has full covariance
+ # It is expected that
+ # pca.basis = FALSE splits Gaussian with full covariance into two modes
+ # pca.basis = TRUE should detect just a single mode
+ 
+ Ns <- 200
+ Nd <- 2
+ k <- 1.5
+ 
+ D2 <- matrix(rnorm(Ns*Nd), ncol = Nd) %*% rbind(c(1,k), c(k,1))
+ 
+ par(mfrow = c(2,2))
+ for (mm in c("vdp", "bic")) {
+   for (pp in c(FALSE, TRUE)) {
+ 
+     # Fit nonparametric Gaussian mixture model
+     out <- mixture.model(D2, mixture.method = mm, pca.basis = pp)
+     plot(D2, col = apply(out$qofz, 1, which.max), main = paste("mm:" , mm, "/ pp:",  pp)) 
+ 
+   }
+ }
+ 
+ }
Loading required package: Rgraphviz
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min

Loading required package: grid
Loading required package: minet
Loading required package: mclust
Package 'mclust' version 5.4.3
Type 'citation("mclust")' for citing this R package in publications.
Loading required package: reshape2

netresponse (C) 2008-2016 Leo Lahti et al.

https://github.com/antagomir/netresponse
> 
> proc.time()
   user  system elapsed 
  3.748   0.100   3.844 

netresponse.Rcheck/tests/timing.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> 
> # Play with different options and check their effect on  running times for bic and vdp 
> 
> skip <- TRUE
> 
> if (!skip) {
+ 
+   Ns <- 100
+   Nd <- 2
+ 
+   set.seed(3488400)
+ 
+   D <- cbind(
+ 
+      	rbind(matrix(rnorm(Ns*Nd, mean = 0), ncol = Nd), 
+        	      matrix(rnorm(Ns*Nd, mean = 2), ncol = Nd),
+       	      cbind(rnorm(Ns, mean = -1), rnorm(Ns, mean = 3))
+  	    ), 
+ 
+      	rbind(matrix(rnorm(Ns*Nd, mean = 0), ncol = Nd), 
+        	      matrix(rnorm(Ns*Nd, mean = 2), ncol = Nd),
+       	      cbind(rnorm(Ns, mean = -1), rnorm(Ns, mean = 3))
+  	    )
+ 	    )
+ 
+   rownames(D) <- paste("R", 1:nrow(D), sep = "-")
+   colnames(D) <- paste("C", 1:ncol(D), sep = "-")
+ 
+   ts <- c()
+   for (mm in c("bic", "vdp")) {
+ 
+ 
+     # NOTE: no PCA basis needed with mixture.method = "bic"
+     tt <- system.time(detect.responses(D, verbose = TRUE, max.responses = 5, 
+ 	   		       mixture.method = mm, information.criterion = "BIC", 
+ 			       merging.threshold = 0, bic.threshold = 0, pca.basis = TRUE))
+ 
+     print(paste(mm, ":", round(tt[["elapsed"]], 3)))
+     ts[[mm]] <- tt[["elapsed"]]
+   }
+ 
+    print(paste(names(ts)[[1]], "/", names(ts)[[2]], ": ", round(ts[[1]]/ts[[2]], 3)))
+ 
+ }
> 
> # -> VDP is much faster when sample sizes increase 
> # 1000 samples -> 25-fold speedup with VDP
> 
> 
> 
> proc.time()
   user  system elapsed 
  0.196   0.028   0.220 

netresponse.Rcheck/tests/toydata2.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> # Generate Nc components from normal-inverseGamma prior
> 
> set.seed(12346)
> 
> Ns <- 300
> Nd <- 2
> 
> # Isotropic cloud
> D1 <- matrix(rnorm(Ns*Nd), ncol = Nd) 
> 
> # Single diagonal mode
> D2 <- matrix(rnorm(Ns*Nd), ncol = Nd) %*% rbind(c(1,2), c(2,1)) 
> 
> # Two isotropic modes
> D3 <- rbind(matrix(rnorm(Ns/2*Nd), ncol = Nd), matrix(rnorm(Ns/2*Nd, mean = 3), ncol = Nd))
> D <- cbind(D1, D2, D3)
> 
> colnames(D) <- paste("Feature-",  1:ncol(D), sep = "")
> rownames(D) <- paste("Sample-", 1:nrow(D), sep = "")
> 
> 
> proc.time()
   user  system elapsed 
  0.220   0.032   0.243 

netresponse.Rcheck/tests/validate.netresponse.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> 
> skip <- FALSE
> 
> if (!skip) {
+ 
+ # 2. netresponse test
+ # test later with varying parameters
+ 
+ # Load the package
+ library(netresponse)
+ #load("../data/toydata.rda")
+ fs <- list.files("../R/", full.names = TRUE); for (f in fs) {source(f)};
+ 
+ data(toydata)
+ 
+ D <- toydata$emat
+ netw <- toydata$netw
+ 
+ # The toy data is random data with 10 features (genes). 
+ # The features 
+ rf <- c(4, 5, 6)
+ #form a subnetwork with coherent responses
+ # with means 
+ r1 <- c(0, 3, 0)
+ r2 <- c(-5, 0, 2)
+ r3 <- c(5, -3, -3)
+ mu.real <- rbind(r1, r2, r3)
+ # real weights
+ w.real <- c(70, 70, 60)/200
+ # and unit variances
+ rv <- 1
+ 
+ # Fit the model
+ #res <- detect.responses(D, netw, verbose = TRUE, mc.cores = 2)
+ #res <- detect.responses(D, netw, verbose = TRUE, max.responses = 4)
+ 
+ res <- detect.responses(D, netw, verbose = TRUE, max.responses = 3, mixture.method = "bic", information.criterion = "BIC", merging.threshold = 1, bic.threshold = 10, pca.basis = FALSE)
+ 
+ print("OK")
+ 
+ # Subnets (each is a list of nodes)
+ subnets <- get.subnets(res)
+ 
+ # the correct subnet is retrieved in subnet number 2:
+ #> subnet[[2]]
+ #[1] "feat4" "feat5" "feat6"
+ 
+ # how about responses
+ # Retrieve model for the subnetwork with lowest cost function value
+ # means, standard devations and weights for the components
+ if (!is.null(subnets)) {
+ m <- get.model.parameters(res, subnet.id = "Subnet-2")
+ 
+ # order retrieved and real response means by the first feature 
+ # (to ensure responses are listed in the same order)
+ # and compare deviation from correct solution
+ ord.obs <- order(m$mu[,1])
+ ord.real <- order(mu.real[,1])
+ 
+ print(paste("Correlation between real and observed responses:", cor(as.vector(m$mu[ord.obs,]), as.vector(mu.real[ord.real,]))))
+ 
+ # all real variances are 1, compare to observed ones
+ print(paste("Maximum deviation from real variances: ", max(abs(rv - range(m$sd))/rv)))
+ 
+ # weights deviate somewhat, this is likely due to relatively small sample size
+ #print("Maximum deviation from real weights: ")
+ #print( (w.real[ord.real] - m$w[ord.obs])/w.real[ord.real])
+ 
+ print("estimated and real mean matrices")
+ print(m$mu[ord.obs,])
+ print(mu.real[ord.real,])
+ 
+ }
+ 
+ }
Loading required package: Rgraphviz
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min

Loading required package: grid
Loading required package: minet
Loading required package: mclust
Package 'mclust' version 5.4.3
Type 'citation("mclust")' for citing this R package in publications.
Loading required package: reshape2

netresponse (C) 2008-2016 Leo Lahti et al.

https://github.com/antagomir/netresponse
convert the network into edge matrix
removing self-links
matching the features between network and datamatrix
Filter the network to only keep the edges with highest mutual information
1 / 8
2 / 8
3 / 8
4 / 8
5 / 8
6 / 8
7 / 8
8 / 8
Compute cost for each variable
Computing model for node 1 / 10
Computing model for node 2 / 10
Computing model for node 3 / 10
Computing model for node 4 / 10
Computing model for node 5 / 10
Computing model for node 6 / 10
Computing model for node 7 / 10
Computing model for node 8 / 10
Computing model for node 9 / 10
Computing model for node 10 / 10
independent models done
Computing delta values for edge  1 / 29 

Computing delta values for edge  2 / 29 

Computing delta values for edge  3 / 29 

Computing delta values for edge  4 / 29 

Computing delta values for edge  5 / 29 

Computing delta values for edge  6 / 29 

Computing delta values for edge  7 / 29 

Computing delta values for edge  8 / 29 

Computing delta values for edge  9 / 29 

Computing delta values for edge  10 / 29 

Computing delta values for edge  11 / 29 

Computing delta values for edge  12 / 29 

Computing delta values for edge  13 / 29 

Computing delta values for edge  14 / 29 

Computing delta values for edge  15 / 29 

Computing delta values for edge  16 / 29 

Computing delta values for edge  17 / 29 

Computing delta values for edge  18 / 29 

Computing delta values for edge  19 / 29 

Computing delta values for edge  20 / 29 

Computing delta values for edge  21 / 29 

Computing delta values for edge  22 / 29 

Computing delta values for edge  23 / 29 

Computing delta values for edge  24 / 29 

Computing delta values for edge  25 / 29 

Computing delta values for edge  26 / 29 

Computing delta values for edge  27 / 29 

Computing delta values for edge  28 / 29 

Computing delta values for edge  29 / 29 

Combining groups,  10  group(s) left...

Combining groups,  9  group(s) left...

Combining groups,  8  group(s) left...

Combining groups,  7  group(s) left...

Combining groups,  6  group(s) left...

Combining groups,  5  group(s) left...

Combining groups,  4  group(s) left...

[1] "OK"
[1] "Correlation between real and observed responses: 0.999117848017521"
[1] "Maximum deviation from real variances:  0.0391530538149302"
[1] "estimated and real mean matrices"
           [,1]       [,2]       [,3]
[1,] -4.9334982 -0.1575946  2.1613225
[2,] -0.1299285  3.0047767 -0.1841669
[3,]  5.0738471 -2.9334877 -3.2217492
   [,1] [,2] [,3]
r2   -5    0    2
r1    0    3    0
r3    5   -3   -3
> 
> proc.time()
   user  system elapsed 
 42.472   0.108  42.645 

netresponse.Rcheck/tests/validate.pca.basis.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> 
> skip <- FALSE
> 
> if (!skip) {
+ # Visualization
+ 
+ library(netresponse)
+ 
+ #fs <- list.files("˜/Rpackages/netresponse/netresponse/R/", full.names = T); for (f in fs) {source(f)}
+ 
+ source("toydata2.R")
+ 
+ # --------------------------------------------------------------------
+ 
+ set.seed(4243)
+ mixture.method <- "bic"
+ 
+ # --------------------------------------------------------------------
+ 
+ res <- detect.responses(D, verbose = TRUE, max.responses = 10, 
+ 	   		       mixture.method = mixture.method, information.criterion = "BIC", 
+ 			       merging.threshold = 1, bic.threshold = 10, pca.basis = FALSE)
+ 
+ res.pca <- detect.responses(D, verbose = TRUE, max.responses = 10, mixture.method = mixture.method, information.criterion = "BIC", merging.threshold = 1, bic.threshold = 10, pca.basis = TRUE)
+ 
+ # --------------------------------------------------------------------
+ 
+ k <- 1
+ 
+ # Incorrect VDP: two modes detected
+ # Correct BIC: single mode detected
+ subnet.id <- names(get.subnets(res))[[k]]
+ 
+ # Correct: single mode detected (VDP & BIC)
+ subnet.id.pca <- names(get.subnets(res.pca))[[k]]
+ 
+ # --------------------------------------------------------------------------------------------------
+ 
+ vis1 <- plot_responses(res, subnet.id, plot_mode = "pca", main = paste("NoPCA; NoDM"))
+ vis2 <- plot_responses(res, subnet.id, plot_mode = "pca", datamatrix = D, main = "NoPCA, DM")
+ vis3 <- plot_responses(res.pca, subnet.id.pca, plot_mode = "pca", main = "PCA, NoDM")
+ vis4 <- plot_responses(res.pca, subnet.id.pca, plot_mode = "pca", datamatrix = D, main = "PCA, DM")
+ 
+ # With original data: VDP overlearns; BIC works; with full covariance data 
+ # With PCA basis: modes detected ok with both VDP and BIC.
+ 
+ # ------------------------------------------------------------------------
+ 
+ # TODO
+ # pca.plot(res, subnet.id)
+ # plot_subnet(res, subnet.id) 
+ }
Loading required package: Rgraphviz
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min

Loading required package: grid
Loading required package: minet
Loading required package: mclust
Package 'mclust' version 5.4.3
Type 'citation("mclust")' for citing this R package in publications.
Loading required package: reshape2

netresponse (C) 2008-2016 Leo Lahti et al.

https://github.com/antagomir/netresponse
convert the network into edge matrix
removing self-links
matching the features between network and datamatrix
Filter the network to only keep the edges with highest mutual information
1 / 5
2 / 5
3 / 5
4 / 5
5 / 5
Compute cost for each variable
Computing model for node 1 / 6
Computing model for node 2 / 6
Computing model for node 3 / 6
Computing model for node 4 / 6
Computing model for node 5 / 6
Computing model for node 6 / 6
independent models done
Computing delta values for edge  1 / 15 

Computing delta values for edge  2 / 15 

Computing delta values for edge  3 / 15 

Computing delta values for edge  4 / 15 

Computing delta values for edge  5 / 15 

Computing delta values for edge  6 / 15 

Computing delta values for edge  7 / 15 

Computing delta values for edge  8 / 15 

Computing delta values for edge  9 / 15 

Computing delta values for edge  10 / 15 

Computing delta values for edge  11 / 15 

Computing delta values for edge  12 / 15 

Computing delta values for edge  13 / 15 

Computing delta values for edge  14 / 15 

Computing delta values for edge  15 / 15 

Combining groups,  6  group(s) left...

Combining groups,  5  group(s) left...

Combining groups,  4  group(s) left...

Combining groups,  3  group(s) left...

convert the network into edge matrix
removing self-links
matching the features between network and datamatrix
Filter the network to only keep the edges with highest mutual information
1 / 5
2 / 5
3 / 5
4 / 5
5 / 5
Compute cost for each variable
Computing model for node 1 / 6
Computing model for node 2 / 6
Computing model for node 3 / 6
Computing model for node 4 / 6
Computing model for node 5 / 6
Computing model for node 6 / 6
independent models done
Computing delta values for edge  1 / 15 

Computing delta values for edge  2 / 15 

Computing delta values for edge  3 / 15 

Computing delta values for edge  4 / 15 

Computing delta values for edge  5 / 15 

Computing delta values for edge  6 / 15 

Computing delta values for edge  7 / 15 

Computing delta values for edge  8 / 15 

Computing delta values for edge  9 / 15 

Computing delta values for edge  10 / 15 

Computing delta values for edge  11 / 15 

Computing delta values for edge  12 / 15 

Computing delta values for edge  13 / 15 

Computing delta values for edge  14 / 15 

Computing delta values for edge  15 / 15 

Combining groups,  6  group(s) left...

Combining groups,  5  group(s) left...

Combining groups,  4  group(s) left...

Combining groups,  3  group(s) left...

Warning messages:
1: In check.network(network, datamatrix, verbose = verbose) :
  No network provided in function call: assuming fully connected nodes.
2: In check.network(network, datamatrix, verbose = verbose) :
  No network provided in function call: assuming fully connected nodes.
> 
> proc.time()
   user  system elapsed 
 23.316   0.148  23.482 

netresponse.Rcheck/tests/vdpmixture.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> 
> # 1. vdp.mixt: moodien loytyminen eri dimensiolla, naytemaarilla ja komponenteilla
> #   -> ainakin nopea check
> 
> #######################################################################
> 
> # Generate random data from five Gaussians. 
> # Detect modes with vdp-gm. 
> # Plot data points and detected clusters with variance ellipses
> 
> #######################################################################
> 
> library(netresponse)
Loading required package: Rgraphviz
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, sd, var, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, basename, cbind, colMeans, colSums, colnames,
    dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
    intersect, is.unsorted, lapply, lengths, mapply, match, mget,
    order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
    rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
    union, unique, unsplit, which, which.max, which.min

Loading required package: grid
Loading required package: minet
Loading required package: mclust
Package 'mclust' version 5.4.3
Type 'citation("mclust")' for citing this R package in publications.
Loading required package: reshape2

netresponse (C) 2008-2016 Leo Lahti et al.

https://github.com/antagomir/netresponse
> #source("˜/Rpackages/netresponse/netresponse/R/detect.responses.R")
> #source("˜/Rpackages/netresponse/netresponse/R/internals.R")
> #source("˜/Rpackages/netresponse/netresponse/R/vdp.mixt.R")
> #dyn.load("/home/tuli/Rpackages/netresponse/netresponse/src/netresponse.so")
> 
> 
> #########  Generate DATA #############################################
> 
> res <- generate.toydata()
> D <- res$data
> component.means <- res$means
> component.sds   <- res$sds
> sample2comp     <- res$sample2comp
> 
> ######################################################################
> 
> # Fit nonparametric Gaussian mixture model
> out <- vdp.mixt(D)
> # out <- vdp.mixt(D, c.max = 3) # try with limited number of components -> OK
> 
> ############################################################
> 
> # Compare input data and results
> 
> ord.out <- order(out$posterior$centroids[,1])
> ord.in <- order(component.means[,1])
> 
> means.out <- out$posterior$centroids[ord.out,]
> means.in <- component.means[ord.in,]
> 
> # Cluster stds and variances
> sds.out <- out$posterior$sds[ord.out,]
> sds.in  <- component.sds[ord.in,]
> vars.out <- sds.out^2
> vars.in <- sds.in^2
> 
> # Check correspondence between input and output
> if (length(means.in) == length(means.out)) {
+    cm <- cor(as.vector(means.in), as.vector(means.out))
+    csd <- cor(as.vector(sds.in), as.vector(sds.out))
+ }
> 
> # Plot results (assuming 2D)
> 
> ran <- range(c(as.vector(means.in - 2*vars.in), 
+                as.vector(means.in + 2*vars.in), 
+ 	       as.vector(means.out + 2*vars.out), 
+ 	       as.vector(means.out - 2*vars.out)))
> 
> plot(D, pch = 20, main = paste("Cor.means:", round(cm,3), "/ Cor.sds:", round(csd,3)), xlim = ran, ylim = ran) 
> for (ci in 1:nrow(means.out))  { add.ellipse(centroid = means.out[ci,], covmat = diag(vars.out[ci,]), col = "red") }
> for (ci in 1:nrow(means.in))  { add.ellipse(centroid = means.in[ci,], covmat = diag(vars.in[ci,]), col = "blue") }
> 
> 
> 
> proc.time()
   user  system elapsed 
  2.216   0.084   2.297 

Example timings

netresponse.Rcheck/netresponse-Ex.timings

nameusersystemelapsed
ICMg.combined.sampler44.748 0.01246.750
ICMg.links.sampler1.4240.0041.484
NetResponseModel-class0.0000.0000.001
PlotMixture000
PlotMixtureBivariate000
PlotMixtureMultivariate0.0000.0000.001
PlotMixtureMultivariate.deprecated000
PlotMixtureUnivariate000
add.ellipse000
centerData000
check.matrix0.0000.0000.001
check.network000
detect.responses0.0040.0000.003
dna0.0320.0000.054
enrichment.list.factor000
enrichment.list.factor.minimal000
filter.netw000
filter.network000
find.similar.features0.3840.0320.504
generate.toydata000
get.dat-NetResponseModel-method000
get.mis000
get.model.parameters0.0080.0000.006
get.subnets-NetResponseModel-method000
getqofz-NetResponseModel-method000
independent.models000
list.significant.responses0.0000.0000.001
listify.groupings000
model.stats0.0040.0000.004
netresponse-package4.0920.0244.119
order.responses0.0040.0000.000
osmo0.0320.0040.036
pick.model.pairs000
pick.model.parameters000
plotPCA000
plot_associations000
plot_data0.0000.0000.001
plot_expression000
plot_matrix0.0040.0000.006
plot_response000
plot_responses000
plot_scale0.0040.0000.000
plot_subnet000
read.sif000
remove.negative.edges000
response.enrichment000
response2sample0.0000.0040.003
sample2response000
set.breaks0.0000.0000.001
toydata0.0000.0000.002
update.model.pair000
vdp.mixt0.0320.0000.033
vectorize.groupings000
write.netresponse.results000