| Back to Multiple platform build/check report for BioC 3.9 |
|
This page was generated on 2019-04-09 11:58:32 -0400 (Tue, 09 Apr 2019).
| Package 1079/1703 | Hostname | OS / Arch | INSTALL | BUILD | CHECK | BUILD BIN | ||||||
| netresponse 1.43.0 Leo Lahti
| malbec2 | Linux (Ubuntu 18.04.2 LTS) / x86_64 | OK | OK | WARNINGS | |||||||
| tokay2 | Windows Server 2012 R2 Standard / x64 | OK | OK | [ WARNINGS ] | OK | |||||||
| celaya2 | OS X 10.11.6 El Capitan / x86_64 | OK | OK | WARNINGS | OK | |||||||
| merida2 | OS X 10.11.6 El Capitan / x86_64 | OK | OK | WARNINGS | OK |
| Package: netresponse |
| Version: 1.43.0 |
| Command: C:\Users\biocbuild\bbs-3.9-bioc\R\bin\R.exe CMD check --force-multiarch --install=check:netresponse.install-out.txt --library=C:\Users\biocbuild\bbs-3.9-bioc\R\library --no-vignettes --timings netresponse_1.43.0.tar.gz |
| StartedAt: 2019-04-09 04:33:37 -0400 (Tue, 09 Apr 2019) |
| EndedAt: 2019-04-09 04:41:28 -0400 (Tue, 09 Apr 2019) |
| EllapsedTime: 470.9 seconds |
| RetCode: 0 |
| Status: WARNINGS |
| CheckDir: netresponse.Rcheck |
| Warnings: 1 |
##############################################################################
##############################################################################
###
### Running command:
###
### C:\Users\biocbuild\bbs-3.9-bioc\R\bin\R.exe CMD check --force-multiarch --install=check:netresponse.install-out.txt --library=C:\Users\biocbuild\bbs-3.9-bioc\R\library --no-vignettes --timings netresponse_1.43.0.tar.gz
###
##############################################################################
##############################################################################
* using log directory 'C:/Users/biocbuild/bbs-3.9-bioc/meat/netresponse.Rcheck'
* using R Under development (unstable) (2019-03-09 r76216)
* using platform: x86_64-w64-mingw32 (64-bit)
* using session charset: ISO8859-1
* using option '--no-vignettes'
* checking for file 'netresponse/DESCRIPTION' ... OK
* checking extension type ... Package
* this is package 'netresponse' version '1.43.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 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
* loading checks for arch 'i386'
** 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
* loading checks for arch 'x64'
** 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/i386/netresponse.dll':
Found 'rand', possibly from 'rand' (C)
Object: 'netresponse.o'
Found 'srand', possibly from 'srand' (C)
Object: 'netresponse.o'
File 'netresponse/libs/x64/netresponse.dll':
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 ...
** running examples for arch 'i386' ... OK
Examples with CPU or elapsed time > 5s
user system elapsed
ICMg.combined.sampler 43.66 0.03 43.69
** running examples for arch 'x64' ... OK
Examples with CPU or elapsed time > 5s
user system elapsed
ICMg.combined.sampler 38.72 0.01 38.73
* checking for unstated dependencies in 'tests' ... OK
* checking tests ...
** running tests for arch 'i386' ...
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
** running tests for arch 'x64' ...
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
'C:/Users/biocbuild/bbs-3.9-bioc/meat/netresponse.Rcheck/00check.log'
for details.
netresponse.Rcheck/00install.out
##############################################################################
##############################################################################
###
### Running command:
###
### C:\cygwin\bin\curl.exe -O https://malbec2.bioconductor.org/BBS/3.9/bioc/src/contrib/netresponse_1.43.0.tar.gz && rm -rf netresponse.buildbin-libdir && mkdir netresponse.buildbin-libdir && C:\Users\biocbuild\bbs-3.9-bioc\R\bin\R.exe CMD INSTALL --merge-multiarch --build --library=netresponse.buildbin-libdir netresponse_1.43.0.tar.gz && C:\Users\biocbuild\bbs-3.9-bioc\R\bin\R.exe CMD INSTALL netresponse_1.43.0.zip && rm netresponse_1.43.0.tar.gz netresponse_1.43.0.zip
###
##############################################################################
##############################################################################
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 1030k 100 1030k 0 0 14.8M 0 --:--:-- --:--:-- --:--:-- 16.7M
install for i386
* installing *source* package 'netresponse' ...
** libs
C:/Rtools/mingw_32/bin/gcc -I"C:/Users/BIOCBU˜1/BBS-3˜1.9-B/R/include" -DNDEBUG -I"C:/extsoft/include" -O3 -Wall -std=gnu99 -mtune=generic -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 'vdp_mk_hp_posterior':
netresponse.c:210:3: warning: 'U_hat_table' may be used uninitialized in this function [-Wmaybe-uninitialized]
update_centroids(datalen, ncentroids, dim1, dim2,
^
netresponse.c:210:3: warning: 'data2_int' may be used uninitialized in this function [-Wmaybe-uninitialized]
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]
C:/Rtools/mingw_32/bin/gcc -shared -s -static-libgcc -o netresponse.dll tmp.def netresponse.o -LC:/extsoft/lib/i386 -LC:/extsoft/lib -LC:/Users/BIOCBU˜1/BBS-3˜1.9-B/R/bin/i386 -lR
installing to C:/Users/biocbuild/bbs-3.9-bioc/meat/netresponse.buildbin-libdir/00LOCK-netresponse/00new/netresponse/libs/i386
** R
** data
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
converting help for package 'netresponse'
finding HTML links ... done
ICMg.combined.sampler html
ICMg.get.comp.memberships html
ICMg.links.sampler html
NetResponseModel-class html
P.S html
P.Sr html
P.r.s html
P.rS html
P.rs.joint html
P.rs.joint.individual html
P.s.individual html
P.s.r html
PlotMixture html
PlotMixtureBivariate html
PlotMixtureMultivariate html
PlotMixtureMultivariate.deprecated html
PlotMixtureUnivariate html
add.ellipse html
bic.mixture html
bic.mixture.multivariate html
bic.mixture.univariate html
bic.select.best.mode html
centerData html
check.matrix html
check.network html
continuous.responses html
detect.responses html
dna html
enrichment.list.factor html
enrichment.list.factor.minimal html
factor.responses html
factor.responses.minimal html
filter.netw html
filter.network html
find.similar.features html
generate.toydata html
get.dat-NetResponseModel-method html
get.mis html
get.model.parameters html
get.subnets-NetResponseModel-method html
getqofz-NetResponseModel-method html
independent.models html
list.responses.continuous.multi html
list.responses.continuous.single html
list.responses.factor html
list.responses.factor.minimal html
list.significant.responses html
listify.groupings html
mixture.model html
model.stats html
netresponse-package html
order.responses html
osmo html
pick.model.pairs html
pick.model.parameters html
plotPCA html
plot_associations html
plot_data html
plot_expression html
plot_matrix html
plot_response html
plot_responses html
plot_scale html
plot_subnet html
read.sif html
remove.negative.edges html
response.enrichment html
response2sample html
sample2response html
set.breaks html
toydata html
update.model.pair html
vdp.mixt html
vectorize.groupings html
write.netresponse.results html
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
install for x64
* installing *source* package 'netresponse' ...
** libs
C:/Rtools/mingw_64/bin/gcc -I"C:/Users/BIOCBU˜1/BBS-3˜1.9-B/R/include" -DNDEBUG -I"C:/extsoft/include" -O2 -Wall -std=gnu99 -mtune=generic -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]
C:/Rtools/mingw_64/bin/gcc -shared -s -static-libgcc -o netresponse.dll tmp.def netresponse.o -LC:/extsoft/lib/x64 -LC:/extsoft/lib -LC:/Users/BIOCBU˜1/BBS-3˜1.9-B/R/bin/x64 -lR
installing to C:/Users/biocbuild/bbs-3.9-bioc/meat/netresponse.buildbin-libdir/netresponse/libs/x64
** testing if installed package can be loaded
* MD5 sums
packaged installation of 'netresponse' as netresponse_1.43.0.zip
* DONE (netresponse)
* installing to library 'C:/Users/biocbuild/bbs-3.9-bioc/R/library'
package 'netresponse' successfully unpacked and MD5 sums checked
|
netresponse.Rcheck/tests_i386/bicmixture.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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, 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
2.71 0.18 2.89
|
netresponse.Rcheck/tests_x64/bicmixture.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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, 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.06 0.28 6.39
|
|
netresponse.Rcheck/tests_i386/ICMg.test.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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, 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):434430418414418400424452468380442463421415418416417425440427457412446413
m(z):837881677567706173698867697167606963706574746981
I:10
convL:-0.480442912473195n(z):3062822452752725122663683312524241899327859378305397264198416345382604343
convN:-0.00443895032094252m(z):8745423710972315250331261759496489143514910980726554
I:20
convL:-0.4034274304559n(z):3093182701513516292263161812884662064272880376219345276176455409368593312
convN:-0.0023092058591992m(z):864841331147338514538127175899548844063509883716754
I:30
convL:-0.373976698842178n(z):34331824514132564721526113732148620252451003391175296304178488402398629277
convN:-0.00527560268758906m(z):874741351127039514535125181869748864163519783726554
I:40
convL:-0.368389886231214n(z):35331825711932870918023613934161220722271020350176304276180408391376587291
convN:-0.00244804312427793m(z):894841351127038514535131181859447864064519783706454
I:50
convL:-0.353679651764117n(z):36931626715635266616222715733452221652191013385154290289174377396402571287
convN:-0.00174438444588605m(z):904841351136838514535131181859647864063519783696454
I:60
convL:-0.355150368014926n(z):37132123316935964914125114834063420812221105372167270264157371426341574284
convN:-0.00401624435574142m(z):904741351136839514535132180859647864063519783696454
I:70
convL:-0.346175079298146n(z):43533924515234162813624417635069420582171059349151258290138360404392561273
convN:-0.00680540723194572m(z):904841351126838514435130182869547864063519883696554
I:80
convL:-0.341454908230424n(z):37331624315934964914222518437565120032151090365171235294156369412412588274
convN:-0.00118546897007853m(z):904841351116837514436131183859647864063519883696454
I:90
convL:-0.340421646235549n(z):39132120417734363214721717838876119012221048402188248252149372390420624275
convN:-0.00491571036951533m(z):914841351126838514535132181859646863963519783696554
I:100
convL:-0.345751767764864n(z):34931619614533863513823318536978418562441141372194256251151369417407648256
convN:-0.170880858308899m(z):904841351096837514436131182859648864065499883726354
Sample iterations:100
I:110
convL:-0.332517378825781n(z):35633219014735467114221419834781717532391214369168258239160348396356703279
convN:-0.00279509090690596m(z):9248413511168375145361311818510147863964459783706454
I:120
convL:-0.344705153693129n(z):37831120115934370512723017436088517312721145401165247238154310419346691258
convN:-0.0019333644212021m(z):9248413511169385144351321808510148863964449883706354
I:130
convL:-0.341210011957551n(z):37831018217035371612120220836592116742501126362168243253162309416352721288
convN:-0.0031908716134877m(z):9048413511269375144361321808510147864064449883716354
I:140
convL:-0.332018991287333n(z):37233518918035473013619817237393015842591120371181230251153301408332806285
convN:-0.00758618891108132m(z):904842351137037514236131184849746874063449983716454
I:150
convL:-0.353853855631635n(z):39334318418833573812720519537898115332381095364192250243163319377354793262
convN:-0.00124404530433722m(z):9048513610969374946361301798497478637614410183716357
I:160
convL:-0.314174951383732n(z):37832520116132571312520816535999015182361186356190233255174315396349810282
convN:-0.00582831247166559m(z):9148513610969374945361301798497478637604410183716358
I:170
convL:-0.346477019670205n(z):350324189164391649148194203378105714072291182315193217277182338378345865275
convN:-0.00332915538727004m(z):9248513610969384946351301798495478636614510183716357
I:180
convL:-0.335916154244457n(z):347294186155386694157189208390104914342311209348182223251166354387269869272
convN:-0.00220954339135871m(z):9148503610969374946361301798496478737614410183716357
I:190
convL:-0.315742215730803n(z):358310173150420678153177221375105414602191170302229239265191302383310833278
convN:-0.00149203842917619m(z):9148513610969384946351311788496468637614410183716457
I:200
convL:-0.338164840212756n(z):343291188166416643145180204366114613782411158309223224279176329381299871294
convN:-0.00280616944842357m(z):9148503610969374946361301798496468737614410183716457
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
8.82 0.26 9.07
|
netresponse.Rcheck/tests_x64/ICMg.test.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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, 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):424412456427421436427422388434414428413406432424426454437409426476436422
m(z):797570735163617681815866747482738564745883687567
I:10
convL:-0.470616915479027n(z):2782723453562993803155562644114924543914622345093133102642701911439177548
convN:-0.0108078940103654m(z):615337567610157109356093104336366102554148531646362119
I:20
convL:-0.395984952722143n(z):3541803393702313183855162803765564493734832624022702492562962219399153534
convN:-0.0113604903086081m(z):635035557610156103396298102285567102574247521757164111
I:30
convL:-0.367334509673217n(z):4521862853802423043645202583755814993904863224032362452452752236352162452
convN:-0.00649072444288443m(z):63503555781025610639629610127566799574247521737463111
I:40
convL:-0.365967020177484n(z):4431632564302742983825332594085784023624693233372752872252232226397169531
convN:-0.00341997687672073m(z):62503555791015610739629898275567100574247521747463111
I:50
convL:-0.362565826350649n(z):4542023484372493093874762664165803703554712783322513521992242185398152559
convN:-0.00339606327439311m(z):63493555781045611338628890285566100564247521746965126
I:60
convL:-0.365766288834977n(z):4472033954542282944034292684366393353874702923122802842311902081401155636
convN:-0.00353768486495023m(z):6353355579103561023962868928556399544445531787165134
I:70
convL:-0.352307703735235n(z):4931963754652573043874572914695903043704802782942743022031822062372139706
convN:-0.00222924890941234m(z):615235558010357993962858928576297544445521787466137
I:80
convL:-0.346856913086516n(z):5371933844712463263594002914695713583964383132732753092361921978340164731
convN:-0.000903653082649264m(z):6252355578103571013962868828576398544445521777466135
I:90
convL:-0.347817568765521n(z):5101873744322443273845032894845993733964442852812622982301871934340144743
convN:-0.00212761282665799m(z):635235557810756983962868929576698544345531797465128
I:100
convL:-0.346698635694968n(z):5022053434412493183765572904805294133724662912932662552321851895348150794
convN:-0.00420329113092482m(z):615135558010757963962878929566798544445521797366129
Sample iterations:100
I:110
convL:-0.348430219330534n(z):5411693334422543243886002825315663893704502572482572642131871912329135809
convN:-0.00320887487560092m(z):615235558010456933761869929577098544446521797163129
I:120
convL:-0.340328525080454n(z):5651823104402332883765992954975634164014662562792682482171951848316158834
convN:-0.00131211798651938m(z):615235557910155923762869929567199544446521807164131
I:130
convL:-0.336647170769369n(z):5691783134352522913785932964725774043604502702852292762352181859314135861
convN:-0.00414016673928877m(z):6153355480101559437628610029577097544446531806963131
I:140
convL:-0.354004921409187n(z):6141783164412642803835722844355394073924262722802533202552231771312158875
convN:-0.00104562219651181m(z):635235557810155933762869929567199544346531807063131
I:150
convL:-0.34976682626195n(z):6201523004482433073965702804915464244074352422842133142372191695326165936
convN:-0.00345110706341747m(z):605235557910155923662869929577199544447521807164131
I:160
convL:-0.334090058214535n(z):5991743074352422903696592864625544693934322462762492602332231739313133907
convN:-0.00305309850296952m(z):6152355577101559237628699295771100554446521787164132
I:170
convL:-0.338389745334298n(z):6091502804302383113707202834774974573944242482842432762542121641338157957
convN:-0.0047346443595244m(z):6152355678101559237628599305572101554446521787064131
I:180
convL:-0.33435746833317n(z):5831662694342402923736842734705214334123912412852582992692071731337147935
convN:-0.00333573670219585m(z):615235557810155913762879929587198554446521787164132
I:190
convL:-0.342402189707583n(z):6091422804242323143816542834454634484634032512952473322472351650337164951
convN:-0.00340779231411963m(z):575235557510155923662869929717387554446571787164131
I:200
convL:-0.347761617397882n(z):5351752584302442913817382714685094454594272832482173172282241635328159980
convN:-0.0021758047592143m(z):575235557910058923760869931687183544446581797164132
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.89 0.21 10.09
|
|
netresponse.Rcheck/tests_i386/mixture.model.test.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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, 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.70 0.28 2.96
|
netresponse.Rcheck/tests_x64/mixture.model.test.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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, 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.95 0.32 3.28
|
|
netresponse.Rcheck/tests_i386/mixture.model.test.multimodal.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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, 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
7.25 0.32 7.54
|
netresponse.Rcheck/tests_x64/mixture.model.test.multimodal.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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, 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.20 0.26 5.45
|
|
netresponse.Rcheck/tests_i386/mixture.model.test.singlemode.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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, 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.09 0.14 3.23
|
netresponse.Rcheck/tests_x64/mixture.model.test.singlemode.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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, 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.18 0.20 3.37
|
|
netresponse.Rcheck/tests_i386/timing.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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.15 0.03 0.17
|
netresponse.Rcheck/tests_x64/timing.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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.23 0.06 0.28
|
|
netresponse.Rcheck/tests_i386/toydata2.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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.23 0.04 0.26
|
netresponse.Rcheck/tests_x64/toydata2.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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.17 0.06 0.21
|
|
netresponse.Rcheck/tests_i386/validate.netresponse.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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, 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
52.26 0.31 52.57
|
netresponse.Rcheck/tests_x64/validate.netresponse.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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, 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
50.73 0.29 51.01
|
|
netresponse.Rcheck/tests_i386/validate.pca.basis.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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, 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
29.32 0.28 29.59
|
netresponse.Rcheck/tests_x64/validate.pca.basis.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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, 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
30.37 0.23 30.60
|
|
netresponse.Rcheck/tests_i386/vdpmixture.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-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, 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.79 0.25 3.01
|
netresponse.Rcheck/tests_x64/vdpmixture.Rout
R Under development (unstable) (2019-03-09 r76216) -- "Unsuffered Consequences"
Copyright (C) 2019 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (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, 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
3.34 0.18 3.51
|
|
netresponse.Rcheck/examples_i386/netresponse-Ex.timings
|
netresponse.Rcheck/examples_x64/netresponse-Ex.timings
|