Back to Multiple platform build/check report for BioC 3.8
ABCDEFGHIJKLMNOPQ[R]STUVWXYZ

CHECK report for rqubic on tokay1

This page was generated on 2019-04-13 11:21:46 -0400 (Sat, 13 Apr 2019).

Package 1349/1649HostnameOS / ArchINSTALLBUILDCHECKBUILD BIN
rqubic 1.28.0
Jitao David Zhang
Snapshot Date: 2019-04-12 17:01:30 -0400 (Fri, 12 Apr 2019)
URL: https://git.bioconductor.org/packages/rqubic
Branch: RELEASE_3_8
Last Commit: 3f1d19e
Last Changed Date: 2018-10-30 11:41:47 -0400 (Tue, 30 Oct 2018)
malbec1 Linux (Ubuntu 16.04.6 LTS) / x86_64  OK  OK  WARNINGS UNNEEDED, same version exists in internal repository
tokay1 Windows Server 2012 R2 Standard / x64  OK  OK [ WARNINGS ] OK UNNEEDED, same version exists in internal repository
merida1 OS X 10.11.6 El Capitan / x86_64  OK  OK  OK  OK UNNEEDED, same version exists in internal repository

Summary

Package: rqubic
Version: 1.28.0
Command: C:\Users\biocbuild\bbs-3.8-bioc\R\bin\R.exe CMD check --force-multiarch --install=check:rqubic.install-out.txt --library=C:\Users\biocbuild\bbs-3.8-bioc\R\library --no-vignettes --timings rqubic_1.28.0.tar.gz
StartedAt: 2019-04-13 05:12:09 -0400 (Sat, 13 Apr 2019)
EndedAt: 2019-04-13 05:14:24 -0400 (Sat, 13 Apr 2019)
EllapsedTime: 135.8 seconds
RetCode: 0
Status:  WARNINGS  
CheckDir: rqubic.Rcheck
Warnings: 1

Command output

##############################################################################
##############################################################################
###
### Running command:
###
###   C:\Users\biocbuild\bbs-3.8-bioc\R\bin\R.exe CMD check --force-multiarch --install=check:rqubic.install-out.txt --library=C:\Users\biocbuild\bbs-3.8-bioc\R\library --no-vignettes --timings rqubic_1.28.0.tar.gz
###
##############################################################################
##############################################################################


* using log directory 'C:/Users/biocbuild/bbs-3.8-bioc/meat/rqubic.Rcheck'
* using R version 3.5.3 (2019-03-11)
* using platform: x86_64-w64-mingw32 (64-bit)
* using session charset: ISO8859-1
* using option '--no-vignettes'
* checking for file 'rqubic/DESCRIPTION' ... OK
* checking extension type ... Package
* this is package 'rqubic' version '1.28.0'
* checking package namespace information ... OK
* checking package dependencies ...Warning: unable to access index for repository https://CRAN.R-project.org/src/contrib:
  cannot open URL 'https://CRAN.R-project.org/src/contrib/PACKAGES'
 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 'rqubic' can be installed ... WARNING
Found the following significant warnings:
  bicluster.c:354:7: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
See 'C:/Users/biocbuild/bbs-3.8-bioc/meat/rqubic.Rcheck/00install.out' for details.
* checking installed package size ... OK
* checking package directory ... OK
* checking 'build' 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 ... NOTE
writeQubicInputFile: no visible global function definition for
  'write.table'
Undefined global functions or variables:
  write.table
Consider adding
  importFrom("utils", "write.table")
to your NAMESPACE file.
* 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 line endings in C/C++/Fortran sources/headers ... OK
* checking line endings in Makefiles ... OK
* checking for GNU extensions in Makefiles ... OK
* checking include directives in Makefiles ... OK
* checking compiled code ... NOTE
Note: information on .o files for i386 is not available
Note: information on .o files for x64 is not available
File 'C:/Users/biocbuild/bbs-3.8-bioc/R/library/rqubic/libs/i386/rqubic.dll':
  Found 'abort', possibly from 'abort' (C), 'runtime' (Fortran)

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. The detected symbols are linked into the code but
might come from libraries and not actually be called.

See 'Writing portable packages' in the 'Writing R Extensions' manual.
* checking files in 'vignettes' ... OK
* checking examples ...
** running examples for arch 'i386' ... OK
** running examples for arch 'x64' ... OK
* checking for unstated dependencies in 'tests' ... OK
* checking tests ...
** running tests for arch 'i386' ...
  Running 'c_output_parser_tests.R'
  Running 'rqubic_implementations.R'
  Running 'test_read.R'
  Running 'test_utilities.R'
 OK
** running tests for arch 'x64' ...
  Running 'c_output_parser_tests.R'
  Running 'rqubic_implementations.R'
  Running 'test_read.R'
  Running 'test_utilities.R'
 OK
* checking for unstated dependencies in vignettes ... OK
* checking package vignettes in 'inst/doc' ... OK
* checking running R code from vignettes ... SKIPPED
* checking re-building of vignette outputs ... SKIPPED
* checking PDF version of manual ... OK
* DONE

Status: 1 WARNING, 2 NOTEs
See
  'C:/Users/biocbuild/bbs-3.8-bioc/meat/rqubic.Rcheck/00check.log'
for details.



Installation output

rqubic.Rcheck/00install.out

##############################################################################
##############################################################################
###
### Running command:
###
###   C:\cygwin\bin\curl.exe -O https://malbec1.bioconductor.org/BBS/3.8/bioc/src/contrib/rqubic_1.28.0.tar.gz && rm -rf rqubic.buildbin-libdir && mkdir rqubic.buildbin-libdir && C:\Users\biocbuild\bbs-3.8-bioc\R\bin\R.exe CMD INSTALL --merge-multiarch --build --library=rqubic.buildbin-libdir rqubic_1.28.0.tar.gz && C:\Users\biocbuild\bbs-3.8-bioc\R\bin\R.exe CMD INSTALL rqubic_1.28.0.zip && rm rqubic_1.28.0.tar.gz rqubic_1.28.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 75158  100 75158    0     0  1540k      0 --:--:-- --:--:-- --:--:-- 1668k

install for i386

* installing *source* package 'rqubic' ...
** libs
C:/Rtools/mingw_32/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O3 -Wall  -std=gnu99 -mtune=generic -c bicluster.c -o bicluster.o
bicluster.c: In function 'seed_intersect_r':
bicluster.c:354:7: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
       if (flag=ss) (*m_cnt)++;
       ^
C:/Rtools/mingw_32/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O3 -Wall  -std=gnu99 -mtune=generic -c discretize.c -o discretize.o
In file included from discretize.c:9:0:
rqubic.h:60:20: warning: 'EDGELIST_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *EDGELIST_ATT_NAME="edgelist";
                    ^
rqubic.h:61:20: warning: 'MINCOL_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *MINCOL_ATT_NAME="minimumCol";
                    ^
C:/Rtools/mingw_32/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O3 -Wall  -std=gnu99 -mtune=generic -c fib.c -o fib.o
In file included from fib.c:35:0:
rqubic.h:60:20: warning: 'EDGELIST_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *EDGELIST_ATT_NAME="edgelist";
                    ^
rqubic.h:61:20: warning: 'MINCOL_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *MINCOL_ATT_NAME="minimumCol";
                    ^
C:/Rtools/mingw_32/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O3 -Wall  -std=gnu99 -mtune=generic -c graph.c -o graph.o
C:/Rtools/mingw_32/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O3 -Wall  -std=gnu99 -mtune=generic -c rqubic.c -o rqubic.o
In file included from rqubic.c:5:0:
rqubic.h:60:20: warning: 'EDGELIST_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *EDGELIST_ATT_NAME="edgelist";
                    ^
rqubic.h:61:20: warning: 'MINCOL_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *MINCOL_ATT_NAME="minimumCol";
                    ^
C:/Rtools/mingw_32/bin/gcc -shared -s -static-libgcc -o rqubic.dll tmp.def bicluster.o discretize.o fib.o graph.o rqubic.o -LC:/extsoft/lib/i386 -LC:/extsoft/lib -LC:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/bin/i386 -lR
installing to C:/Users/biocbuild/bbs-3.8-bioc/meat/rqubic.buildbin-libdir/rqubic/libs/i386
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
  converting help for package 'rqubic'
    finding HTML links ... done
    QUBICBiclusterSet-class                 html  
    finding level-2 HTML links ... done

    combineBiclusts-methods                 html  
    discretize                              html  
    eSetDimName                             html  
    fcFilter-methods                        html  
    fcFilter                                html  
    features-methods                        html  
    generateSeeds-methods                   html  
    parseQubicBlocks                        html  
    quBicluster                             html  
    readBiclusterResults                    html  
    rqubic-package                          html  
    writeQubicInputFile                     html  
** building package indices
** installing vignettes
** testing if installed package can be loaded
In R CMD INSTALL

install for x64

* installing *source* package 'rqubic' ...
** libs
C:/Rtools/mingw_64/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O2 -Wall  -std=gnu99 -mtune=generic -c bicluster.c -o bicluster.o
bicluster.c: In function 'seed_intersect_r':
bicluster.c:354:7: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
       if (flag=ss) (*m_cnt)++;
       ^
C:/Rtools/mingw_64/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O2 -Wall  -std=gnu99 -mtune=generic -c discretize.c -o discretize.o
In file included from discretize.c:9:0:
rqubic.h:60:20: warning: 'EDGELIST_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *EDGELIST_ATT_NAME="edgelist";
                    ^
rqubic.h:61:20: warning: 'MINCOL_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *MINCOL_ATT_NAME="minimumCol";
                    ^
C:/Rtools/mingw_64/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O2 -Wall  -std=gnu99 -mtune=generic -c fib.c -o fib.o
In file included from fib.c:35:0:
rqubic.h:60:20: warning: 'EDGELIST_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *EDGELIST_ATT_NAME="edgelist";
                    ^
rqubic.h:61:20: warning: 'MINCOL_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *MINCOL_ATT_NAME="minimumCol";
                    ^
C:/Rtools/mingw_64/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O2 -Wall  -std=gnu99 -mtune=generic -c graph.c -o graph.o
C:/Rtools/mingw_64/bin/gcc  -I"C:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/include" -DNDEBUG     -I"C:/extsoft/include"     -O2 -Wall  -std=gnu99 -mtune=generic -c rqubic.c -o rqubic.o
In file included from rqubic.c:5:0:
rqubic.h:60:20: warning: 'EDGELIST_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *EDGELIST_ATT_NAME="edgelist";
                    ^
rqubic.h:61:20: warning: 'MINCOL_ATT_NAME' defined but not used [-Wunused-variable]
 static const char *MINCOL_ATT_NAME="minimumCol";
                    ^
C:/Rtools/mingw_64/bin/gcc -shared -s -static-libgcc -o rqubic.dll tmp.def bicluster.o discretize.o fib.o graph.o rqubic.o -LC:/extsoft/lib/x64 -LC:/extsoft/lib -LC:/Users/BIOCBU˜1/BBS-3˜1.8-B/R/bin/x64 -lR
installing to C:/Users/biocbuild/bbs-3.8-bioc/meat/rqubic.buildbin-libdir/rqubic/libs/x64
** testing if installed package can be loaded
* MD5 sums
packaged installation of 'rqubic' as rqubic_1.28.0.zip
* DONE (rqubic)
In R CMD INSTALL
In R CMD INSTALL
* installing to library 'C:/Users/biocbuild/bbs-3.8-bioc/R/library'
package 'rqubic' successfully unpacked and MD5 sums checked
In R CMD INSTALL

Tests output

rqubic.Rcheck/tests_i386/c_output_parser_tests.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
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(rqubic)
> source("test_utilities.R")
> 
> ## parse QUBIC rules
> rule.file <- getTestFile("sampleExpressionSet.rules")
> rule.data <- parseQubicRules(rule.file)
> 
> ## parse QUBIC chars
> chars.file <- getTestFile("sampleExpressionSet.chars")
> chars.data <- parseQubicChars(chars.file)
> 
> ## parse QUBIC blocks
> block.file <- getTestFile("sampleExpressionSet.blocks")
> block.data <- parseQubicBlocks(block.file)
> 
> ## QUBICBiclusterSet methods
> length(block.data)
[1] 86
> dim(block.data)
[1] 469  20
> block.data.rxn <- RowxNumber(block.data)
> block.data.nxc <- NumberxCol(block.data)
> Svalue(block.data)
 [1] 222 168 147 140 123 118 118  93  92  92  92  90  90  88  88  88  86  75  74
[20]  72  72  68  68  66  64  62  62  62  61  61  61  60  59  58  57  54  54  53
[39]  53  52  51  51  49  49  49  49  47  47  47  46  45  44  43  42  42  41  39
[58]  36  35  33  31  31  30  29  29  29  29  29  27  27  27  25  24  24  24  24
[77]  22  22  21  18  15  15  13  13  13   9
> Svalue(block.data, 1:5)
[1] 222 168 147 140 123
> Svalue(block.data, TRUE)
 [1] 222 168 147 140 123 118 118  93  92  92  92  90  90  88  88  88  86  75  74
[20]  72  72  68  68  66  64  62  62  62  61  61  61  60  59  58  57  54  54  53
[39]  53  52  51  51  49  49  49  49  47  47  47  46  45  44  43  42  42  41  39
[58]  36  35  33  31  31  30  29  29  29  29  29  27  27  27  25  24  24  24  24
[77]  22  22  21  18  15  15  13  13  13   9
> 
> block.features <- features(block.data)
> featureCount(block.data)
[1] 469
> block.bcFeatures <- BCfeatures(block.data)
> BCfeatures(block.data, 3:5)
[[1]]
 [1]   1   7  14  24  55  84  87  95 108 113 114 117 128 137 139 142 169 181 219
[20] 234 235 238 243 251 280 289 290 293 303 309 317 326 350 377 392 407 408 414
[39] 417 419 421 422 424 447 455 458 461 467 468

[[2]]
 [1]   1   4   7  24  40  55  63  68  75  77  84  87 102 113 114 117 128 129 136
[20] 137 138 139 140 142 169 179 181 191 201 219 234 235 238 243 263 273 280 281
[39] 289 290 293 295 301 303 309 317 326 348 350 355 369 377 386 392 407 408 409
[58] 415 417 419 421 422 424 438 447 455 458 461 467 468

[[3]]
  [1]   1   4   6   7  24  35  37  38  46  50  52  53  55  57  58  63  65  68
 [19]  75  77  82  84  87  93 102 113 114 116 117 119 128 129 136 137 139 140
 [37] 142 169 179 181 185 191 195 200 201 204 209 211 219 224 226 227 234 235
 [55] 238 243 251 258 260 261 262 263 269 273 275 280 281 289 290 293 295 299
 [73] 301 302 303 306 309 317 323 324 325 326 334 342 346 348 350 355 366 369
 [91] 377 379 380 382 390 391 392 398 402 407 408 409 415 416 417 419 421 422
[109] 424 426 438 447 450 455 456 458 460 461 463 464 466 467 468

> BCfeatureCount(block.data)
 [1]  74  42  49  70 123  59  59  93  46  92  92  18  30  22  44  44  43  75  74
[20]  18  18  17  68  66  32  62  62  62  61  61  61  60  59  58  19  54  27  53
[39]  53  52  17  17  49  49  49  49  47  47  47  46  45  44  43  21  21  41  39
[58]  36  35  11  31  31  30  29  29  29  29  29  27   9  27   5  12  24  24  24
[77]  22  22  21  18  15  15  13  13  13   9
> BCfeatureCount(block.data, 3:5)
[1]  49  70 123
> 
> block.conds <- conditions(block.data)
> conditionCount(block.data)
[1] 20
> block.bcConditions <- BCconditions(block.data)
> BCfeatures(block.data, 3:5)
[[1]]
 [1]   1   7  14  24  55  84  87  95 108 113 114 117 128 137 139 142 169 181 219
[20] 234 235 238 243 251 280 289 290 293 303 309 317 326 350 377 392 407 408 414
[39] 417 419 421 422 424 447 455 458 461 467 468

[[2]]
 [1]   1   4   7  24  40  55  63  68  75  77  84  87 102 113 114 117 128 129 136
[20] 137 138 139 140 142 169 179 181 191 201 219 234 235 238 243 263 273 280 281
[39] 289 290 293 295 301 303 309 317 326 348 350 355 369 377 386 392 407 408 409
[58] 415 417 419 421 422 424 438 447 455 458 461 467 468

[[3]]
  [1]   1   4   6   7  24  35  37  38  46  50  52  53  55  57  58  63  65  68
 [19]  75  77  82  84  87  93 102 113 114 116 117 119 128 129 136 137 139 140
 [37] 142 169 179 181 185 191 195 200 201 204 209 211 219 224 226 227 234 235
 [55] 238 243 251 258 260 261 262 263 269 273 275 280 281 289 290 293 295 299
 [73] 301 302 303 306 309 317 323 324 325 326 334 342 346 348 350 355 366 369
 [91] 377 379 380 382 390 391 392 398 402 407 408 409 415 416 417 419 421 422
[109] 424 426 438 447 450 455 456 458 460 461 463 464 466 467 468

> BCconditionCount(block.data)
 [1] 3 4 3 2 1 2 2 1 2 1 1 5 3 4 2 2 2 1 1 4 4 4 1 1 2 1 1 1 1 1 1 1 1 1 3 1 2 1
[39] 1 1 3 3 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 3 1 1 1 1 1 1 1 1 1 3 1 5 2 1 1 1
[77] 1 1 1 1 1 1 1 1 1 1
> BCconditionCount(block.data, 3:5)
[1] 3 2 1
> 
> block.features <- featureNames(block.data)
> block.conds <- sampleNames(block.data)
> 
> show(block.data)

An object of class QUBICBiclusterSet 

Used features: 469 
Used conditions: 20 
Parameters: k=2, f=1, c=0.95, o=100, q=0.06, r=1
Call:
	parseQubicBlocks(filename = block.file)

Number of Biclusters found:  86 

First  5  Cluster sizes:
                   BC 1 BC 2 BC 3 BC 4 BC 5
Number of Rows:      74   42   49   70  123
Number of Columns:    3    4    3    2    1

> 
> ## subset
> block.data.sub <- block.data[1:3]
> 
> 
> proc.time()
   user  system elapsed 
   1.34    0.07    1.40 

rqubic.Rcheck/tests_x64/c_output_parser_tests.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
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(rqubic)
> source("test_utilities.R")
> 
> ## parse QUBIC rules
> rule.file <- getTestFile("sampleExpressionSet.rules")
> rule.data <- parseQubicRules(rule.file)
> 
> ## parse QUBIC chars
> chars.file <- getTestFile("sampleExpressionSet.chars")
> chars.data <- parseQubicChars(chars.file)
> 
> ## parse QUBIC blocks
> block.file <- getTestFile("sampleExpressionSet.blocks")
> block.data <- parseQubicBlocks(block.file)
> 
> ## QUBICBiclusterSet methods
> length(block.data)
[1] 86
> dim(block.data)
[1] 469  20
> block.data.rxn <- RowxNumber(block.data)
> block.data.nxc <- NumberxCol(block.data)
> Svalue(block.data)
 [1] 222 168 147 140 123 118 118  93  92  92  92  90  90  88  88  88  86  75  74
[20]  72  72  68  68  66  64  62  62  62  61  61  61  60  59  58  57  54  54  53
[39]  53  52  51  51  49  49  49  49  47  47  47  46  45  44  43  42  42  41  39
[58]  36  35  33  31  31  30  29  29  29  29  29  27  27  27  25  24  24  24  24
[77]  22  22  21  18  15  15  13  13  13   9
> Svalue(block.data, 1:5)
[1] 222 168 147 140 123
> Svalue(block.data, TRUE)
 [1] 222 168 147 140 123 118 118  93  92  92  92  90  90  88  88  88  86  75  74
[20]  72  72  68  68  66  64  62  62  62  61  61  61  60  59  58  57  54  54  53
[39]  53  52  51  51  49  49  49  49  47  47  47  46  45  44  43  42  42  41  39
[58]  36  35  33  31  31  30  29  29  29  29  29  27  27  27  25  24  24  24  24
[77]  22  22  21  18  15  15  13  13  13   9
> 
> block.features <- features(block.data)
> featureCount(block.data)
[1] 469
> block.bcFeatures <- BCfeatures(block.data)
> BCfeatures(block.data, 3:5)
[[1]]
 [1]   1   7  14  24  55  84  87  95 108 113 114 117 128 137 139 142 169 181 219
[20] 234 235 238 243 251 280 289 290 293 303 309 317 326 350 377 392 407 408 414
[39] 417 419 421 422 424 447 455 458 461 467 468

[[2]]
 [1]   1   4   7  24  40  55  63  68  75  77  84  87 102 113 114 117 128 129 136
[20] 137 138 139 140 142 169 179 181 191 201 219 234 235 238 243 263 273 280 281
[39] 289 290 293 295 301 303 309 317 326 348 350 355 369 377 386 392 407 408 409
[58] 415 417 419 421 422 424 438 447 455 458 461 467 468

[[3]]
  [1]   1   4   6   7  24  35  37  38  46  50  52  53  55  57  58  63  65  68
 [19]  75  77  82  84  87  93 102 113 114 116 117 119 128 129 136 137 139 140
 [37] 142 169 179 181 185 191 195 200 201 204 209 211 219 224 226 227 234 235
 [55] 238 243 251 258 260 261 262 263 269 273 275 280 281 289 290 293 295 299
 [73] 301 302 303 306 309 317 323 324 325 326 334 342 346 348 350 355 366 369
 [91] 377 379 380 382 390 391 392 398 402 407 408 409 415 416 417 419 421 422
[109] 424 426 438 447 450 455 456 458 460 461 463 464 466 467 468

> BCfeatureCount(block.data)
 [1]  74  42  49  70 123  59  59  93  46  92  92  18  30  22  44  44  43  75  74
[20]  18  18  17  68  66  32  62  62  62  61  61  61  60  59  58  19  54  27  53
[39]  53  52  17  17  49  49  49  49  47  47  47  46  45  44  43  21  21  41  39
[58]  36  35  11  31  31  30  29  29  29  29  29  27   9  27   5  12  24  24  24
[77]  22  22  21  18  15  15  13  13  13   9
> BCfeatureCount(block.data, 3:5)
[1]  49  70 123
> 
> block.conds <- conditions(block.data)
> conditionCount(block.data)
[1] 20
> block.bcConditions <- BCconditions(block.data)
> BCfeatures(block.data, 3:5)
[[1]]
 [1]   1   7  14  24  55  84  87  95 108 113 114 117 128 137 139 142 169 181 219
[20] 234 235 238 243 251 280 289 290 293 303 309 317 326 350 377 392 407 408 414
[39] 417 419 421 422 424 447 455 458 461 467 468

[[2]]
 [1]   1   4   7  24  40  55  63  68  75  77  84  87 102 113 114 117 128 129 136
[20] 137 138 139 140 142 169 179 181 191 201 219 234 235 238 243 263 273 280 281
[39] 289 290 293 295 301 303 309 317 326 348 350 355 369 377 386 392 407 408 409
[58] 415 417 419 421 422 424 438 447 455 458 461 467 468

[[3]]
  [1]   1   4   6   7  24  35  37  38  46  50  52  53  55  57  58  63  65  68
 [19]  75  77  82  84  87  93 102 113 114 116 117 119 128 129 136 137 139 140
 [37] 142 169 179 181 185 191 195 200 201 204 209 211 219 224 226 227 234 235
 [55] 238 243 251 258 260 261 262 263 269 273 275 280 281 289 290 293 295 299
 [73] 301 302 303 306 309 317 323 324 325 326 334 342 346 348 350 355 366 369
 [91] 377 379 380 382 390 391 392 398 402 407 408 409 415 416 417 419 421 422
[109] 424 426 438 447 450 455 456 458 460 461 463 464 466 467 468

> BCconditionCount(block.data)
 [1] 3 4 3 2 1 2 2 1 2 1 1 5 3 4 2 2 2 1 1 4 4 4 1 1 2 1 1 1 1 1 1 1 1 1 3 1 2 1
[39] 1 1 3 3 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 3 1 1 1 1 1 1 1 1 1 3 1 5 2 1 1 1
[77] 1 1 1 1 1 1 1 1 1 1
> BCconditionCount(block.data, 3:5)
[1] 3 2 1
> 
> block.features <- featureNames(block.data)
> block.conds <- sampleNames(block.data)
> 
> show(block.data)

An object of class QUBICBiclusterSet 

Used features: 469 
Used conditions: 20 
Parameters: k=2, f=1, c=0.95, o=100, q=0.06, r=1
Call:
	parseQubicBlocks(filename = block.file)

Number of Biclusters found:  86 

First  5  Cluster sizes:
                   BC 1 BC 2 BC 3 BC 4 BC 5
Number of Rows:      74   42   49   70  123
Number of Columns:    3    4    3    2    1

> 
> ## subset
> block.data.sub <- block.data[1:3]
> 
> 
> proc.time()
   user  system elapsed 
   1.67    0.17    1.82 

rqubic.Rcheck/tests_i386/rqubic_implementations.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
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(rqubic)
> library(Biobase)
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

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

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

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

    IQR, mad, sd, var, xtabs

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

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

Welcome to Bioconductor

    Vignettes contain introductory material; view with
    'browseVignettes()'. To cite Bioconductor, see
    'citation("Biobase")', and for packages 'citation("pkgname")'.

> source("test_utilities.R")
> 
> ## quantileDiscretize
> data(sample.ExpressionSet, package="Biobase")
> exp.eset <- sample.ExpressionSet
> fData(exp.eset) <- data.frame(label=rownames(exprs(exp.eset)),
+                               row.names=rownames(exprs(exp.eset)))
> 
> ## test for C code
> ## note that to let QUBIC use all the samples, the first cell of the rectangular table must be a "o"!
> dis.rank <- 1L
> exp.discret <- quantileDiscretize(exp.eset, rank=dis.rank)
> stopifnot(identical(exprs(exp.discret), quantileDiscretize(exprs(exp.eset), rank=dis.rank)))
> 
> ## Note that the return value of quantileDiscretize is not exactly the same as the version implemented in the C tool of QUBIC
> ## The reason is that in this implementation we use data type "double" to represent expression value, which has higher precision
> ##   than the "float" type used in the QUBIC tool
> 
> ## The following codes visualizes the differences. They mostly appear where there are many tied values.
> if(FALSE) {
+   chars.mat <- as.matrix(chars.data[,-1])
+   diff.max <- chars.mat - exprs(exp.discret)
+   diff.max.rowMan <- apply(diff.max, 1, function(x) sum(x!=0))
+   cbind(qubic=chars.mat[134,], rqubic=exprs(exp.discret)[134,])
+   if(require(RColorBrewer))
+     image(t(diff.max), col=brewer.pal(5, "RdBu"))
+ }
> 
> ## Generate seeds
> exp.sel <- 1:nrow(exp.discret)
> exp.sel.mincol <- 2L
> exp.discret.sel <- exp.discret[exp.sel,]
> exp.sel.seeds <- generateSeeds(exp.discret.sel, minColWidth=exp.sel.mincol)
> exp.sel.seeds
rqubic sorted seeds (associating C pointer):
  Number of seeds: 37161
  Minimum sample number: 2
> 
> ## writeQubicInputFile(exp.discret.sel, file="testCase.csv", sampleNames=1:ncol(exp.discret.sel))
> 
> ## TODO
> ## quBicluster: a list of
> exp.blocks <- quBicluster(exp.sel.seeds,exp.discret.sel,
+                           report.no=100L,
+                           filter.proportion=0.1)
> exp.blocks

An object of class QUBICBiclusterSet 

Used features: 500 
Used conditions: 26 
Parameters: k=2, f=0.1, c=0.95, o=100, q=0.06, r=1
Call:
	blocksByIndex(seeds = seeds, eset = eset, index = rcIndex, report.no = report.no, 
	    tolerance = tolerance, filter.proportion = filter.proportion)

Number of Biclusters found:  17 

First  5  Cluster sizes:
                   BC 1 BC 2 BC 3 BC 4 BC 5
Number of Rows:      74   92   44   75   62
Number of Columns:    3    1    2    1    1

> exp.blocks[1]

An object of class QUBICBiclusterSet 

Used features: 500 
Used conditions: 26 
Parameters: k=2, f=0.1, c=0.95, o=100, q=0.06, r=1
Call:
	blocksByIndex(seeds = seeds, eset = eset, index = rcIndex, report.no = report.no, 
	    tolerance = tolerance, filter.proportion = filter.proportion)

There was one cluster found with
  74 Rows and  3 columns
> parameter(exp.blocks)
$Call
blocksByIndex(seeds = seeds, eset = eset, index = rcIndex, report.no = report.no, 
    tolerance = tolerance, filter.proportion = filter.proportion)

$Method
[1] "rqubic"

$qubicVersion
[1] "rqubic 1.28.0"

$inputDataFile
[1] NA

$k
[1] 2

$f
[1] 0.1

$c
[1] 0.95

$o
[1] 100

$q
[1] 0.06

$r
[1] 1

> features(exp.blocks)
  [1] "AFFX-MurIL2_at"              "AFFX-MurIL10_at"            
  [3] "AFFX-MurIL4_at"              "AFFX-MurFAS_at"             
  [5] "AFFX-BioB-5_at"              "AFFX-BioB-M_at"             
  [7] "AFFX-BioB-3_at"              "AFFX-BioC-5_at"             
  [9] "AFFX-BioC-3_at"              "AFFX-BioDn-5_at"            
 [11] "AFFX-BioDn-3_at"             "AFFX-CreX-5_at"             
 [13] "AFFX-CreX-3_at"              "AFFX-BioB-5_st"             
 [15] "AFFX-BioB-M_st"              "AFFX-BioB-3_st"             
 [17] "AFFX-BioC-5_st"              "AFFX-BioC-3_st"             
 [19] "AFFX-BioDn-5_st"             "AFFX-BioDn-3_st"            
 [21] "AFFX-CreX-5_st"              "AFFX-CreX-3_st"             
 [23] "AFFX-hum_alu_at"             "AFFX-DapX-5_at"             
 [25] "AFFX-DapX-M_at"              "AFFX-DapX-3_at"             
 [27] "AFFX-LysX-5_at"              "AFFX-LysX-M_at"             
 [29] "AFFX-LysX-3_at"              "AFFX-PheX-5_at"             
 [31] "AFFX-PheX-M_at"              "AFFX-PheX-3_at"             
 [33] "AFFX-ThrX-5_at"              "AFFX-ThrX-M_at"             
 [35] "AFFX-ThrX-3_at"              "AFFX-TrpnX-5_at"            
 [37] "AFFX-TrpnX-M_at"             "AFFX-TrpnX-3_at"            
 [39] "AFFX-HUMISGF3A/M97935_5_at"  "AFFX-HUMISGF3A/M97935_MA_at"
 [41] "AFFX-HUMISGF3A/M97935_MB_at" "AFFX-HUMISGF3A/M97935_3_at" 
 [43] "AFFX-HUMRGE/M10098_5_at"     "AFFX-HUMRGE/M10098_M_at"    
 [45] "AFFX-HUMRGE/M10098_3_at"     "AFFX-HUMGAPDH/M33197_5_at"  
 [47] "AFFX-HUMGAPDH/M33197_M_at"   "AFFX-HUMGAPDH/M33197_3_at"  
 [49] "AFFX-HSAC07/X00351_5_at"     "AFFX-HSAC07/X00351_M_at"    
 [51] "AFFX-HSAC07/X00351_3_at"     "AFFX-HUMTFRR/M11507_5_at"   
 [53] "AFFX-HUMTFRR/M11507_M_at"    "AFFX-HUMTFRR/M11507_3_at"   
 [55] "AFFX-M27830_5_at"            "AFFX-M27830_M_at"           
 [57] "AFFX-M27830_3_at"            "AFFX-HSAC07/X00351_3_st"    
 [59] "AFFX-HUMGAPDH/M33197_5_st"   "AFFX-HUMGAPDH/M33197_M_st"  
 [61] "AFFX-HUMGAPDH/M33197_3_st"   "AFFX-HSAC07/X00351_5_st"    
 [63] "AFFX-HSAC07/X00351_M_st"     "AFFX-YEL002c/WBP1_at"       
 [65] "AFFX-YEL018w/_at"            "AFFX-YEL024w/RIP1_at"       
 [67] "AFFX-YEL021w/URA3_at"        "31307_at"                   
 [69] "31308_at"                    "31309_r_at"                 
 [71] "31310_at"                    "31311_at"                   
 [73] "31312_at"                    "31313_at"                   
 [75] "31314_at"                    "31315_at"                   
 [77] "31316_at"                    "31317_r_at"                 
 [79] "31318_at"                    "31319_at"                   
 [81] "31320_at"                    "31321_at"                   
 [83] "31322_at"                    "31323_r_at"                 
 [85] "31324_at"                    "31325_at"                   
 [87] "31326_at"                    "31327_at"                   
 [89] "31328_at"                    "31329_at"                   
 [91] "31330_at"                    "31331_at"                   
 [93] "31332_at"                    "31333_at"                   
 [95] "31334_at"                    "31335_at"                   
 [97] "31336_at"                    "31337_at"                   
 [99] "31338_at"                    "31339_at"                   
[101] "31340_at"                    "31341_at"                   
[103] "31342_at"                    "31343_at"                   
[105] "31344_at"                    "31345_at"                   
[107] "31346_at"                    "31347_at"                   
[109] "31348_at"                    "31349_at"                   
[111] "31350_at"                    "31351_at"                   
[113] "31352_at"                    "31353_f_at"                 
[115] "31354_r_at"                  "31355_at"                   
[117] "31356_at"                    "31357_at"                   
[119] "31358_at"                    "31359_at"                   
[121] "31360_at"                    "31361_at"                   
[123] "31362_at"                    "31363_at"                   
[125] "31364_i_at"                  "31365_f_at"                 
[127] "31366_at"                    "31367_at"                   
[129] "31368_at"                    "31369_at"                   
[131] "31370_at"                    "31371_at"                   
[133] "31372_at"                    "31373_at"                   
[135] "31374_at"                    "31375_at"                   
[137] "31376_at"                    "31377_r_at"                 
[139] "31378_at"                    "31379_at"                   
[141] "31380_at"                    "31381_at"                   
[143] "31382_f_at"                  "31383_at"                   
[145] "31384_at"                    "31385_at"                   
[147] "31386_at"                    "31387_at"                   
[149] "31388_at"                    "31389_at"                   
[151] "31390_at"                    "31391_at"                   
[153] "31392_r_at"                  "31393_r_at"                 
[155] "31394_at"                    "31395_i_at"                 
[157] "31396_r_at"                  "31397_at"                   
[159] "31398_at"                    "31399_at"                   
[161] "31400_at"                    "31401_r_at"                 
[163] "31402_at"                    "31403_at"                   
[165] "31404_at"                    "31405_at"                   
[167] "31406_at"                    "31407_at"                   
[169] "31408_at"                    "31409_at"                   
[171] "31410_at"                    "31411_at"                   
[173] "31412_at"                    "31413_at"                   
[175] "31414_at"                    "31415_at"                   
[177] "31416_at"                    "31417_at"                   
[179] "31418_at"                    "31419_r_at"                 
[181] "31420_at"                    "31421_at"                   
[183] "31422_at"                    "31423_at"                   
[185] "31424_at"                    "31425_g_at"                 
[187] "31426_at"                    "31427_at"                   
[189] "31428_at"                    "31429_at"                   
[191] "31430_at"                    "31431_at"                   
[193] "31432_g_at"                  "31433_at"                   
[195] "31434_at"                    "31435_at"                   
[197] "31436_s_at"                  "31437_r_at"                 
[199] "31438_s_at"                  "31439_f_at"                 
[201] "31440_at"                    "31441_at"                   
[203] "31442_at"                    "31443_at"                   
[205] "31444_s_at"                  "31445_at"                   
[207] "31446_s_at"                  "31447_at"                   
[209] "31448_s_at"                  "31449_at"                   
[211] "31450_s_at"                  "31451_at"                   
[213] "31452_at"                    "31453_s_at"                 
[215] "31454_f_at"                  "31455_r_at"                 
[217] "31456_at"                    "31457_at"                   
[219] "31458_at"                    "31459_i_at"                 
[221] "31460_f_at"                  "31461_at"                   
[223] "31462_f_at"                  "31463_s_at"                 
[225] "31464_at"                    "31465_g_at"                 
[227] "31466_at"                    "31467_at"                   
[229] "31468_f_at"                  "31469_s_at"                 
[231] "31470_at"                    "31471_at"                   
[233] "31472_s_at"                  "31473_s_at"                 
[235] "31474_r_at"                  "31475_at"                   
[237] "31476_g_at"                  "31477_at"                   
[239] "31478_at"                    "31479_f_at"                 
[241] "31480_f_at"                  "31481_s_at"                 
[243] "31482_at"                    "31483_g_at"                 
[245] "31484_at"                    "31485_at"                   
[247] "31486_s_at"                  "31487_at"                   
[249] "31488_s_at"                  "31489_at"                   
[251] "31490_at"                    "31491_s_at"                 
[253] "31492_at"                    "31493_s_at"                 
[255] "31494_at"                    "31495_at"                   
[257] "31496_g_at"                  "31497_at"                   
[259] "31498_f_at"                  "31499_s_at"                 
[261] "31500_at"                    "31501_at"                   
[263] "31502_at"                    "31503_at"                   
[265] "31504_at"                    "31505_at"                   
[267] "31506_s_at"                  "31507_at"                   
[269] "31508_at"                    "31509_at"                   
[271] "31510_s_at"                  "31511_at"                   
[273] "31512_at"                    "31513_at"                   
[275] "31514_at"                    "31515_at"                   
[277] "31516_f_at"                  "31517_f_at"                 
[279] "31518_i_at"                  "31519_f_at"                 
[281] "31520_at"                    "31521_f_at"                 
[283] "31522_f_at"                  "31523_f_at"                 
[285] "31524_f_at"                  "31525_s_at"                 
[287] "31526_f_at"                  "31527_at"                   
[289] "31528_f_at"                  "31529_at"                   
[291] "31530_at"                    "31531_g_at"                 
[293] "31532_at"                    "31533_s_at"                 
[295] "31534_at"                    "31535_i_at"                 
[297] "31536_at"                    "31537_at"                   
[299] "31538_at"                    "31539_r_at"                 
[301] "31540_at"                    "31541_at"                   
[303] "31542_at"                    "31543_at"                   
[305] "31544_at"                    "31545_at"                   
[307] "31546_at"                    "31547_at"                   
[309] "31548_at"                    "31549_at"                   
[311] "31550_at"                    "31551_at"                   
[313] "31552_at"                    "31553_at"                   
[315] "31554_at"                    "31555_at"                   
[317] "31556_at"                    "31557_at"                   
[319] "31558_at"                    "31559_at"                   
[321] "31560_at"                    "31561_at"                   
[323] "31562_at"                    "31563_at"                   
[325] "31564_at"                    "31565_at"                   
[327] "31566_at"                    "31567_at"                   
[329] "31568_at"                    "31569_at"                   
[331] "31570_at"                    "31571_at"                   
[333] "31572_at"                    "31573_at"                   
[335] "31574_i_at"                  "31575_f_at"                 
[337] "31576_at"                    "31577_at"                   
[339] "31578_at"                    "31579_at"                   
[341] "31580_at"                    "31581_at"                   
[343] "31582_at"                    "31583_at"                   
[345] "31584_at"                    "31585_at"                   
[347] "31586_f_at"                  "31587_at"                   
[349] "31588_at"                    "31589_at"                   
[351] "31590_g_at"                  "31591_s_at"                 
[353] "31592_at"                    "31593_at"                   
[355] "31594_at"                    "31595_at"                   
[357] "31596_f_at"                  "31597_r_at"                 
[359] "31598_s_at"                  "31599_f_at"                 
[361] "31600_s_at"                  "31601_s_at"                 
[363] "31602_at"                    "31603_at"                   
[365] "31604_at"                    "31605_at"                   
[367] "31606_at"                    "31607_at"                   
[369] "31608_g_at"                  "31609_s_at"                 
[371] "31610_at"                    "31611_s_at"                 
[373] "31612_at"                    "31613_at"                   
[375] "31614_at"                    "31615_i_at"                 
[377] "31616_r_at"                  "31617_at"                   
[379] "31618_at"                    "31619_at"                   
[381] "31620_at"                    "31621_s_at"                 
[383] "31622_f_at"                  "31623_f_at"                 
[385] "31624_at"                    "31625_at"                   
[387] "31626_i_at"                  "31627_f_at"                 
[389] "31628_at"                    "31629_at"                   
[391] "31630_at"                    "31631_f_at"                 
[393] "31632_at"                    "31633_g_at"                 
[395] "31634_at"                    "31635_g_at"                 
[397] "31636_s_at"                  "31637_s_at"                 
[399] "31638_at"                    "31639_f_at"                 
[401] "31640_r_at"                  "31641_s_at"                 
[403] "31642_at"                    "31643_at"                   
[405] "31644_at"                    "31645_at"                   
[407] "31646_at"                    "31647_at"                   
[409] "31648_at"                    "31649_at"                   
[411] "31650_g_at"                  "31651_at"                   
[413] "31652_at"                    "31653_at"                   
[415] "31654_at"                    "31655_at"                   
[417] "31656_at"                    "31657_at"                   
[419] "31658_at"                    "31659_at"                   
[421] "31660_at"                    "31661_at"                   
[423] "31662_at"                    "31663_at"                   
[425] "31664_at"                    "31665_s_at"                 
[427] "31666_f_at"                  "31667_r_at"                 
[429] "31668_f_at"                  "31669_s_at"                 
[431] "31670_s_at"                  "31671_at"                   
[433] "31672_g_at"                  "31673_s_at"                 
[435] "31674_s_at"                  "31675_s_at"                 
[437] "31676_at"                    "31677_at"                   
[439] "31678_at"                    "31679_at"                   
[441] "31680_at"                    "31681_at"                   
[443] "31682_s_at"                  "31683_at"                   
[445] "31684_at"                    "31685_at"                   
[447] "31686_at"                    "31687_f_at"                 
[449] "31688_at"                    "31689_at"                   
[451] "31690_at"                    "31691_g_at"                 
[453] "31692_at"                    "31693_f_at"                 
[455] "31694_at"                    "31695_g_at"                 
[457] "31696_at"                    "31697_s_at"                 
[459] "31698_at"                    "31699_at"                   
[461] "31700_at"                    "31701_r_at"                 
[463] "31702_at"                    "31703_at"                   
[465] "31704_at"                    "31705_at"                   
[467] "31706_at"                    "31707_at"                   
[469] "31708_at"                    "31709_at"                   
[471] "31710_at"                    "31711_at"                   
[473] "31712_at"                    "31713_s_at"                 
[475] "31714_at"                    "31715_at"                   
[477] "31716_at"                    "31717_at"                   
[479] "31718_at"                    "31719_at"                   
[481] "31720_s_at"                  "31721_at"                   
[483] "31722_at"                    "31723_at"                   
[485] "31724_at"                    "31725_s_at"                 
[487] "31726_at"                    "31727_at"                   
[489] "31728_at"                    "31729_at"                   
[491] "31730_at"                    "31731_at"                   
[493] "31732_at"                    "31733_at"                   
[495] "31734_at"                    "31735_at"                   
[497] "31736_at"                    "31737_at"                   
[499] "31738_at"                    "31739_at"                   
> BCfeatures(exp.blocks)
[[1]]
 [1]   1   3   5   6   7  13  14  16  17  20  21  25  26  29  31  34  36  65  66
[20]  67  68  75  92 108 118 124 126 145 147 155 157 158 185 186 190 202 211 213
[39] 214 216 246 256 258 297 298 304 315 316 319 325 334 341 352 358 361 374 375
[58] 379 385 387 389 392 395 403 410 413 431 440 462 471 473 476 486 497

[[2]]
 [1]   1   5   6   7   8  12  13  14  16  17  20  21  24  25  26  29  34  55  56
[20]  66  67  68  72  77  79  92  94  97 102 108 124 125 141 143 145 154 155 158
[39] 160 161 166 185 186 190 202 211 212 213 214 215 216 227 233 244 245 246 256
[58] 258 268 278 297 308 312 315 316 319 321 325 331 335 338 344 354 359 367 374
[77] 375 379 382 387 389 395 397 403 408 413 439 440 454 462 479 486

[[3]]
 [1]   5  16  20  25  26  29  34  36  39  68  75  76  92 129 134 166 173 180 190
[20] 191 204 213 216 224 230 237 285 307 317 319 325 334 343 356 360 374 385 389
[39] 437 440 458 460 473 491

[[4]]
 [1]   1   6   7  21  36  53  58  59  74  75  84 118 121 126 128 137 147 167 177
[20] 181 184 186 189 200 201 211 222 223 224 235 237 238 242 253 259 265 268 275
[39] 276 290 296 298 311 315 321 325 327 332 335 336 337 350 361 366 369 388 393
[58] 396 403 415 419 423 426 432 433 445 447 451 467 471 476 478 482 493 498

[[5]]
 [1]   1   9  14  16  20  23  48  49  50  55  58  60  62  64  66  67  79  86 102
[20] 138 140 158 165 167 180 186 190 195 227 230 257 268 271 277 280 288 306 307
[39] 329 330 332 335 336 345 350 358 365 374 383 384 392 413 416 419 434 445 447
[58] 458 465 480 487 490

[[6]]
 [1]  40  58  66  84  89 117 130 132 134 142 143 169 171 194 201 207 208 214 219
[20] 223 235 236 242 249 252 259 277 282 283 284 285 289 290 294 296 308 321 327
[39] 340 350 353 354 363 366 368 369 379 397 398 416 426 435 451 454 467 470 478
[58] 482 487 488 493 494

[[7]]
 [1]   9  11  31  41  49  55  56  60  62  67  68 100 104 105 109 123 131 141 147
[20] 152 158 167 168 178 195 199 203 206 207 210 212 217 227 234 252 260 264 269
[39] 273 295 318 323 330 335 346 354 357 360 363 386 447 457 462 466 471 488 489
[58] 490 492

[[8]]
 [1]   3   9  13  43  49  58  90  93  95 102 103 107 143 156 158 159 170 172 183
[20] 209 228 248 251 255 257 294 299 301 314 335 336 352 371 373 380 388 400 407
[39] 417 418 423 445 447 448 457 468 478 490 492

[[9]]
 [1]  33  39  40  41  42  46  52  53  54  58  76  78  80  81  96 126 128 147 192
[20] 199 201 224 235 251 260 262 265 273 283 284 285 287 289 301 305 347 357 361
[39] 369 399 426 428 431 432 433 435 441 448 451

[[10]]
 [1]  55  62  67  72  96 111 129 133 167 178 195 201 207 227 234 238 239 243 246
[20] 252 258 264 269 292 295 309 311 322 330 333 335 337 343 353 357 358 382 395
[39] 401 424 457 471 485 499

[[11]]
 [1]   1  16  36  51  55  57  62  67 121 129 134 140 158 167 178 186 227 237 264
[20] 268 269 295 298 325 330 332 343 350 379 447 460 470 471 487 488

[[12]]
 [1]  12  17  47  48  51  85  91 100 102 127 141 143 195 206 212 223 271 287 307
[20] 316 344 354 355 366 413 451 464 470 492

[[13]]
 [1]  14  17  58  59  75  93 102 107 126 138 173 201 240 269 273 319 323 338 356
[20] 407 408 417 418 466 467 492 500

[[14]]
 [1]  13  41  75 144 147 151 170 182 199 208 250 258 260 294 343 357 408 421 428
[20] 430 438 452 467 468

[[15]]
 [1]  46  96 224 253 265 277 285 289 354 361 366 369 382 435 451 457 463 467

[[16]]
 [1]  39  40  41  42 192 199 260 262 283 285 289 294 386 454 492

[[17]]
 [1]  42  58  96 224 238 265 269 326 361 366 435 441 456

> conditions(exp.blocks)
 [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S"
[20] "T" "U" "V" "W" "X" "Y" "Z"
> BCconditionCount(exp.blocks)
 [1] 3 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1
> 
> proc.time()
   user  system elapsed 
   1.87    0.12    1.98 

rqubic.Rcheck/tests_x64/rqubic_implementations.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
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(rqubic)
> library(Biobase)
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

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

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

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

    IQR, mad, sd, var, xtabs

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

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

Welcome to Bioconductor

    Vignettes contain introductory material; view with
    'browseVignettes()'. To cite Bioconductor, see
    'citation("Biobase")', and for packages 'citation("pkgname")'.

> source("test_utilities.R")
> 
> ## quantileDiscretize
> data(sample.ExpressionSet, package="Biobase")
> exp.eset <- sample.ExpressionSet
> fData(exp.eset) <- data.frame(label=rownames(exprs(exp.eset)),
+                               row.names=rownames(exprs(exp.eset)))
> 
> ## test for C code
> ## note that to let QUBIC use all the samples, the first cell of the rectangular table must be a "o"!
> dis.rank <- 1L
> exp.discret <- quantileDiscretize(exp.eset, rank=dis.rank)
> stopifnot(identical(exprs(exp.discret), quantileDiscretize(exprs(exp.eset), rank=dis.rank)))
> 
> ## Note that the return value of quantileDiscretize is not exactly the same as the version implemented in the C tool of QUBIC
> ## The reason is that in this implementation we use data type "double" to represent expression value, which has higher precision
> ##   than the "float" type used in the QUBIC tool
> 
> ## The following codes visualizes the differences. They mostly appear where there are many tied values.
> if(FALSE) {
+   chars.mat <- as.matrix(chars.data[,-1])
+   diff.max <- chars.mat - exprs(exp.discret)
+   diff.max.rowMan <- apply(diff.max, 1, function(x) sum(x!=0))
+   cbind(qubic=chars.mat[134,], rqubic=exprs(exp.discret)[134,])
+   if(require(RColorBrewer))
+     image(t(diff.max), col=brewer.pal(5, "RdBu"))
+ }
> 
> ## Generate seeds
> exp.sel <- 1:nrow(exp.discret)
> exp.sel.mincol <- 2L
> exp.discret.sel <- exp.discret[exp.sel,]
> exp.sel.seeds <- generateSeeds(exp.discret.sel, minColWidth=exp.sel.mincol)
> exp.sel.seeds
rqubic sorted seeds (associating C pointer):
  Number of seeds: 37161
  Minimum sample number: 2
> 
> ## writeQubicInputFile(exp.discret.sel, file="testCase.csv", sampleNames=1:ncol(exp.discret.sel))
> 
> ## TODO
> ## quBicluster: a list of
> exp.blocks <- quBicluster(exp.sel.seeds,exp.discret.sel,
+                           report.no=100L,
+                           filter.proportion=0.1)
> exp.blocks

An object of class QUBICBiclusterSet 

Used features: 500 
Used conditions: 26 
Parameters: k=2, f=0.1, c=0.95, o=100, q=0.06, r=1
Call:
	blocksByIndex(seeds = seeds, eset = eset, index = rcIndex, report.no = report.no, 
	    tolerance = tolerance, filter.proportion = filter.proportion)

Number of Biclusters found:  17 

First  5  Cluster sizes:
                   BC 1 BC 2 BC 3 BC 4 BC 5
Number of Rows:      74   92   44   75   62
Number of Columns:    3    1    2    1    1

> exp.blocks[1]

An object of class QUBICBiclusterSet 

Used features: 500 
Used conditions: 26 
Parameters: k=2, f=0.1, c=0.95, o=100, q=0.06, r=1
Call:
	blocksByIndex(seeds = seeds, eset = eset, index = rcIndex, report.no = report.no, 
	    tolerance = tolerance, filter.proportion = filter.proportion)

There was one cluster found with
  74 Rows and  3 columns
> parameter(exp.blocks)
$Call
blocksByIndex(seeds = seeds, eset = eset, index = rcIndex, report.no = report.no, 
    tolerance = tolerance, filter.proportion = filter.proportion)

$Method
[1] "rqubic"

$qubicVersion
[1] "rqubic 1.28.0"

$inputDataFile
[1] NA

$k
[1] 2

$f
[1] 0.1

$c
[1] 0.95

$o
[1] 100

$q
[1] 0.06

$r
[1] 1

> features(exp.blocks)
  [1] "AFFX-MurIL2_at"              "AFFX-MurIL10_at"            
  [3] "AFFX-MurIL4_at"              "AFFX-MurFAS_at"             
  [5] "AFFX-BioB-5_at"              "AFFX-BioB-M_at"             
  [7] "AFFX-BioB-3_at"              "AFFX-BioC-5_at"             
  [9] "AFFX-BioC-3_at"              "AFFX-BioDn-5_at"            
 [11] "AFFX-BioDn-3_at"             "AFFX-CreX-5_at"             
 [13] "AFFX-CreX-3_at"              "AFFX-BioB-5_st"             
 [15] "AFFX-BioB-M_st"              "AFFX-BioB-3_st"             
 [17] "AFFX-BioC-5_st"              "AFFX-BioC-3_st"             
 [19] "AFFX-BioDn-5_st"             "AFFX-BioDn-3_st"            
 [21] "AFFX-CreX-5_st"              "AFFX-CreX-3_st"             
 [23] "AFFX-hum_alu_at"             "AFFX-DapX-5_at"             
 [25] "AFFX-DapX-M_at"              "AFFX-DapX-3_at"             
 [27] "AFFX-LysX-5_at"              "AFFX-LysX-M_at"             
 [29] "AFFX-LysX-3_at"              "AFFX-PheX-5_at"             
 [31] "AFFX-PheX-M_at"              "AFFX-PheX-3_at"             
 [33] "AFFX-ThrX-5_at"              "AFFX-ThrX-M_at"             
 [35] "AFFX-ThrX-3_at"              "AFFX-TrpnX-5_at"            
 [37] "AFFX-TrpnX-M_at"             "AFFX-TrpnX-3_at"            
 [39] "AFFX-HUMISGF3A/M97935_5_at"  "AFFX-HUMISGF3A/M97935_MA_at"
 [41] "AFFX-HUMISGF3A/M97935_MB_at" "AFFX-HUMISGF3A/M97935_3_at" 
 [43] "AFFX-HUMRGE/M10098_5_at"     "AFFX-HUMRGE/M10098_M_at"    
 [45] "AFFX-HUMRGE/M10098_3_at"     "AFFX-HUMGAPDH/M33197_5_at"  
 [47] "AFFX-HUMGAPDH/M33197_M_at"   "AFFX-HUMGAPDH/M33197_3_at"  
 [49] "AFFX-HSAC07/X00351_5_at"     "AFFX-HSAC07/X00351_M_at"    
 [51] "AFFX-HSAC07/X00351_3_at"     "AFFX-HUMTFRR/M11507_5_at"   
 [53] "AFFX-HUMTFRR/M11507_M_at"    "AFFX-HUMTFRR/M11507_3_at"   
 [55] "AFFX-M27830_5_at"            "AFFX-M27830_M_at"           
 [57] "AFFX-M27830_3_at"            "AFFX-HSAC07/X00351_3_st"    
 [59] "AFFX-HUMGAPDH/M33197_5_st"   "AFFX-HUMGAPDH/M33197_M_st"  
 [61] "AFFX-HUMGAPDH/M33197_3_st"   "AFFX-HSAC07/X00351_5_st"    
 [63] "AFFX-HSAC07/X00351_M_st"     "AFFX-YEL002c/WBP1_at"       
 [65] "AFFX-YEL018w/_at"            "AFFX-YEL024w/RIP1_at"       
 [67] "AFFX-YEL021w/URA3_at"        "31307_at"                   
 [69] "31308_at"                    "31309_r_at"                 
 [71] "31310_at"                    "31311_at"                   
 [73] "31312_at"                    "31313_at"                   
 [75] "31314_at"                    "31315_at"                   
 [77] "31316_at"                    "31317_r_at"                 
 [79] "31318_at"                    "31319_at"                   
 [81] "31320_at"                    "31321_at"                   
 [83] "31322_at"                    "31323_r_at"                 
 [85] "31324_at"                    "31325_at"                   
 [87] "31326_at"                    "31327_at"                   
 [89] "31328_at"                    "31329_at"                   
 [91] "31330_at"                    "31331_at"                   
 [93] "31332_at"                    "31333_at"                   
 [95] "31334_at"                    "31335_at"                   
 [97] "31336_at"                    "31337_at"                   
 [99] "31338_at"                    "31339_at"                   
[101] "31340_at"                    "31341_at"                   
[103] "31342_at"                    "31343_at"                   
[105] "31344_at"                    "31345_at"                   
[107] "31346_at"                    "31347_at"                   
[109] "31348_at"                    "31349_at"                   
[111] "31350_at"                    "31351_at"                   
[113] "31352_at"                    "31353_f_at"                 
[115] "31354_r_at"                  "31355_at"                   
[117] "31356_at"                    "31357_at"                   
[119] "31358_at"                    "31359_at"                   
[121] "31360_at"                    "31361_at"                   
[123] "31362_at"                    "31363_at"                   
[125] "31364_i_at"                  "31365_f_at"                 
[127] "31366_at"                    "31367_at"                   
[129] "31368_at"                    "31369_at"                   
[131] "31370_at"                    "31371_at"                   
[133] "31372_at"                    "31373_at"                   
[135] "31374_at"                    "31375_at"                   
[137] "31376_at"                    "31377_r_at"                 
[139] "31378_at"                    "31379_at"                   
[141] "31380_at"                    "31381_at"                   
[143] "31382_f_at"                  "31383_at"                   
[145] "31384_at"                    "31385_at"                   
[147] "31386_at"                    "31387_at"                   
[149] "31388_at"                    "31389_at"                   
[151] "31390_at"                    "31391_at"                   
[153] "31392_r_at"                  "31393_r_at"                 
[155] "31394_at"                    "31395_i_at"                 
[157] "31396_r_at"                  "31397_at"                   
[159] "31398_at"                    "31399_at"                   
[161] "31400_at"                    "31401_r_at"                 
[163] "31402_at"                    "31403_at"                   
[165] "31404_at"                    "31405_at"                   
[167] "31406_at"                    "31407_at"                   
[169] "31408_at"                    "31409_at"                   
[171] "31410_at"                    "31411_at"                   
[173] "31412_at"                    "31413_at"                   
[175] "31414_at"                    "31415_at"                   
[177] "31416_at"                    "31417_at"                   
[179] "31418_at"                    "31419_r_at"                 
[181] "31420_at"                    "31421_at"                   
[183] "31422_at"                    "31423_at"                   
[185] "31424_at"                    "31425_g_at"                 
[187] "31426_at"                    "31427_at"                   
[189] "31428_at"                    "31429_at"                   
[191] "31430_at"                    "31431_at"                   
[193] "31432_g_at"                  "31433_at"                   
[195] "31434_at"                    "31435_at"                   
[197] "31436_s_at"                  "31437_r_at"                 
[199] "31438_s_at"                  "31439_f_at"                 
[201] "31440_at"                    "31441_at"                   
[203] "31442_at"                    "31443_at"                   
[205] "31444_s_at"                  "31445_at"                   
[207] "31446_s_at"                  "31447_at"                   
[209] "31448_s_at"                  "31449_at"                   
[211] "31450_s_at"                  "31451_at"                   
[213] "31452_at"                    "31453_s_at"                 
[215] "31454_f_at"                  "31455_r_at"                 
[217] "31456_at"                    "31457_at"                   
[219] "31458_at"                    "31459_i_at"                 
[221] "31460_f_at"                  "31461_at"                   
[223] "31462_f_at"                  "31463_s_at"                 
[225] "31464_at"                    "31465_g_at"                 
[227] "31466_at"                    "31467_at"                   
[229] "31468_f_at"                  "31469_s_at"                 
[231] "31470_at"                    "31471_at"                   
[233] "31472_s_at"                  "31473_s_at"                 
[235] "31474_r_at"                  "31475_at"                   
[237] "31476_g_at"                  "31477_at"                   
[239] "31478_at"                    "31479_f_at"                 
[241] "31480_f_at"                  "31481_s_at"                 
[243] "31482_at"                    "31483_g_at"                 
[245] "31484_at"                    "31485_at"                   
[247] "31486_s_at"                  "31487_at"                   
[249] "31488_s_at"                  "31489_at"                   
[251] "31490_at"                    "31491_s_at"                 
[253] "31492_at"                    "31493_s_at"                 
[255] "31494_at"                    "31495_at"                   
[257] "31496_g_at"                  "31497_at"                   
[259] "31498_f_at"                  "31499_s_at"                 
[261] "31500_at"                    "31501_at"                   
[263] "31502_at"                    "31503_at"                   
[265] "31504_at"                    "31505_at"                   
[267] "31506_s_at"                  "31507_at"                   
[269] "31508_at"                    "31509_at"                   
[271] "31510_s_at"                  "31511_at"                   
[273] "31512_at"                    "31513_at"                   
[275] "31514_at"                    "31515_at"                   
[277] "31516_f_at"                  "31517_f_at"                 
[279] "31518_i_at"                  "31519_f_at"                 
[281] "31520_at"                    "31521_f_at"                 
[283] "31522_f_at"                  "31523_f_at"                 
[285] "31524_f_at"                  "31525_s_at"                 
[287] "31526_f_at"                  "31527_at"                   
[289] "31528_f_at"                  "31529_at"                   
[291] "31530_at"                    "31531_g_at"                 
[293] "31532_at"                    "31533_s_at"                 
[295] "31534_at"                    "31535_i_at"                 
[297] "31536_at"                    "31537_at"                   
[299] "31538_at"                    "31539_r_at"                 
[301] "31540_at"                    "31541_at"                   
[303] "31542_at"                    "31543_at"                   
[305] "31544_at"                    "31545_at"                   
[307] "31546_at"                    "31547_at"                   
[309] "31548_at"                    "31549_at"                   
[311] "31550_at"                    "31551_at"                   
[313] "31552_at"                    "31553_at"                   
[315] "31554_at"                    "31555_at"                   
[317] "31556_at"                    "31557_at"                   
[319] "31558_at"                    "31559_at"                   
[321] "31560_at"                    "31561_at"                   
[323] "31562_at"                    "31563_at"                   
[325] "31564_at"                    "31565_at"                   
[327] "31566_at"                    "31567_at"                   
[329] "31568_at"                    "31569_at"                   
[331] "31570_at"                    "31571_at"                   
[333] "31572_at"                    "31573_at"                   
[335] "31574_i_at"                  "31575_f_at"                 
[337] "31576_at"                    "31577_at"                   
[339] "31578_at"                    "31579_at"                   
[341] "31580_at"                    "31581_at"                   
[343] "31582_at"                    "31583_at"                   
[345] "31584_at"                    "31585_at"                   
[347] "31586_f_at"                  "31587_at"                   
[349] "31588_at"                    "31589_at"                   
[351] "31590_g_at"                  "31591_s_at"                 
[353] "31592_at"                    "31593_at"                   
[355] "31594_at"                    "31595_at"                   
[357] "31596_f_at"                  "31597_r_at"                 
[359] "31598_s_at"                  "31599_f_at"                 
[361] "31600_s_at"                  "31601_s_at"                 
[363] "31602_at"                    "31603_at"                   
[365] "31604_at"                    "31605_at"                   
[367] "31606_at"                    "31607_at"                   
[369] "31608_g_at"                  "31609_s_at"                 
[371] "31610_at"                    "31611_s_at"                 
[373] "31612_at"                    "31613_at"                   
[375] "31614_at"                    "31615_i_at"                 
[377] "31616_r_at"                  "31617_at"                   
[379] "31618_at"                    "31619_at"                   
[381] "31620_at"                    "31621_s_at"                 
[383] "31622_f_at"                  "31623_f_at"                 
[385] "31624_at"                    "31625_at"                   
[387] "31626_i_at"                  "31627_f_at"                 
[389] "31628_at"                    "31629_at"                   
[391] "31630_at"                    "31631_f_at"                 
[393] "31632_at"                    "31633_g_at"                 
[395] "31634_at"                    "31635_g_at"                 
[397] "31636_s_at"                  "31637_s_at"                 
[399] "31638_at"                    "31639_f_at"                 
[401] "31640_r_at"                  "31641_s_at"                 
[403] "31642_at"                    "31643_at"                   
[405] "31644_at"                    "31645_at"                   
[407] "31646_at"                    "31647_at"                   
[409] "31648_at"                    "31649_at"                   
[411] "31650_g_at"                  "31651_at"                   
[413] "31652_at"                    "31653_at"                   
[415] "31654_at"                    "31655_at"                   
[417] "31656_at"                    "31657_at"                   
[419] "31658_at"                    "31659_at"                   
[421] "31660_at"                    "31661_at"                   
[423] "31662_at"                    "31663_at"                   
[425] "31664_at"                    "31665_s_at"                 
[427] "31666_f_at"                  "31667_r_at"                 
[429] "31668_f_at"                  "31669_s_at"                 
[431] "31670_s_at"                  "31671_at"                   
[433] "31672_g_at"                  "31673_s_at"                 
[435] "31674_s_at"                  "31675_s_at"                 
[437] "31676_at"                    "31677_at"                   
[439] "31678_at"                    "31679_at"                   
[441] "31680_at"                    "31681_at"                   
[443] "31682_s_at"                  "31683_at"                   
[445] "31684_at"                    "31685_at"                   
[447] "31686_at"                    "31687_f_at"                 
[449] "31688_at"                    "31689_at"                   
[451] "31690_at"                    "31691_g_at"                 
[453] "31692_at"                    "31693_f_at"                 
[455] "31694_at"                    "31695_g_at"                 
[457] "31696_at"                    "31697_s_at"                 
[459] "31698_at"                    "31699_at"                   
[461] "31700_at"                    "31701_r_at"                 
[463] "31702_at"                    "31703_at"                   
[465] "31704_at"                    "31705_at"                   
[467] "31706_at"                    "31707_at"                   
[469] "31708_at"                    "31709_at"                   
[471] "31710_at"                    "31711_at"                   
[473] "31712_at"                    "31713_s_at"                 
[475] "31714_at"                    "31715_at"                   
[477] "31716_at"                    "31717_at"                   
[479] "31718_at"                    "31719_at"                   
[481] "31720_s_at"                  "31721_at"                   
[483] "31722_at"                    "31723_at"                   
[485] "31724_at"                    "31725_s_at"                 
[487] "31726_at"                    "31727_at"                   
[489] "31728_at"                    "31729_at"                   
[491] "31730_at"                    "31731_at"                   
[493] "31732_at"                    "31733_at"                   
[495] "31734_at"                    "31735_at"                   
[497] "31736_at"                    "31737_at"                   
[499] "31738_at"                    "31739_at"                   
> BCfeatures(exp.blocks)
[[1]]
 [1]   1   3   5   6   7  13  14  16  17  20  21  25  26  29  31  34  36  65  66
[20]  67  68  75  92 108 118 124 126 145 147 155 157 158 185 186 190 202 211 213
[39] 214 216 246 256 258 297 298 304 315 316 319 325 334 341 352 358 361 374 375
[58] 379 385 387 389 392 395 403 410 413 431 440 462 471 473 476 486 497

[[2]]
 [1]   1   5   6   7   8  12  13  14  16  17  20  21  24  25  26  29  34  55  56
[20]  66  67  68  72  77  79  92  94  97 102 108 124 125 141 143 145 154 155 158
[39] 160 161 166 185 186 190 202 211 212 213 214 215 216 227 233 244 245 246 256
[58] 258 268 278 297 308 312 315 316 319 321 325 331 335 338 344 354 359 367 374
[77] 375 379 382 387 389 395 397 403 408 413 439 440 454 462 479 486

[[3]]
 [1]   5  16  20  25  26  29  34  36  39  68  75  76  92 129 134 166 173 180 190
[20] 191 204 213 216 224 230 237 285 307 317 319 325 334 343 356 360 374 385 389
[39] 437 440 458 460 473 491

[[4]]
 [1]   1   6   7  21  36  53  58  59  74  75  84 118 121 126 128 137 147 167 177
[20] 181 184 186 189 200 201 211 222 223 224 235 237 238 242 253 259 265 268 275
[39] 276 290 296 298 311 315 321 325 327 332 335 336 337 350 361 366 369 388 393
[58] 396 403 415 419 423 426 432 433 445 447 451 467 471 476 478 482 493 498

[[5]]
 [1]   1   9  14  16  20  23  48  49  50  55  58  60  62  64  66  67  79  86 102
[20] 138 140 158 165 167 180 186 190 195 227 230 257 268 271 277 280 288 306 307
[39] 329 330 332 335 336 345 350 358 365 374 383 384 392 413 416 419 434 445 447
[58] 458 465 480 487 490

[[6]]
 [1]  40  58  66  84  89 117 130 132 134 142 143 169 171 194 201 207 208 214 219
[20] 223 235 236 242 249 252 259 277 282 283 284 285 289 290 294 296 308 321 327
[39] 340 350 353 354 363 366 368 369 379 397 398 416 426 435 451 454 467 470 478
[58] 482 487 488 493 494

[[7]]
 [1]   9  11  31  41  49  55  56  60  62  67  68 100 104 105 109 123 131 141 147
[20] 152 158 167 168 178 195 199 203 206 207 210 212 217 227 234 252 260 264 269
[39] 273 295 318 323 330 335 346 354 357 360 363 386 447 457 462 466 471 488 489
[58] 490 492

[[8]]
 [1]   3   9  13  43  49  58  90  93  95 102 103 107 143 156 158 159 170 172 183
[20] 209 228 248 251 255 257 294 299 301 314 335 336 352 371 373 380 388 400 407
[39] 417 418 423 445 447 448 457 468 478 490 492

[[9]]
 [1]  33  39  40  41  42  46  52  53  54  58  76  78  80  81  96 126 128 147 192
[20] 199 201 224 235 251 260 262 265 273 283 284 285 287 289 301 305 347 357 361
[39] 369 399 426 428 431 432 433 435 441 448 451

[[10]]
 [1]  55  62  67  72  96 111 129 133 167 178 195 201 207 227 234 238 239 243 246
[20] 252 258 264 269 292 295 309 311 322 330 333 335 337 343 353 357 358 382 395
[39] 401 424 457 471 485 499

[[11]]
 [1]   1  16  36  51  55  57  62  67 121 129 134 140 158 167 178 186 227 237 264
[20] 268 269 295 298 325 330 332 343 350 379 447 460 470 471 487 488

[[12]]
 [1]  12  17  47  48  51  85  91 100 102 127 141 143 195 206 212 223 271 287 307
[20] 316 344 354 355 366 413 451 464 470 492

[[13]]
 [1]  14  17  58  59  75  93 102 107 126 138 173 201 240 269 273 319 323 338 356
[20] 407 408 417 418 466 467 492 500

[[14]]
 [1]  13  41  75 144 147 151 170 182 199 208 250 258 260 294 343 357 408 421 428
[20] 430 438 452 467 468

[[15]]
 [1]  46  96 224 253 265 277 285 289 354 361 366 369 382 435 451 457 463 467

[[16]]
 [1]  39  40  41  42 192 199 260 262 283 285 289 294 386 454 492

[[17]]
 [1]  42  58  96 224 238 265 269 326 361 366 435 441 456

> conditions(exp.blocks)
 [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S"
[20] "T" "U" "V" "W" "X" "Y" "Z"
> BCconditionCount(exp.blocks)
 [1] 3 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1
> 
> proc.time()
   user  system elapsed 
   1.95    0.04    1.98 

rqubic.Rcheck/tests_i386/test_read.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
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(rqubic)
> source("test_utilities.R")
> 
> bf1 <- getTestFile("bic_1.out")
> bfn <- getTestFile("bic_null.out")
> bf3 <- getTestFile("bic_3.out")
> 
> bi1 <- readBiclusterResults(bf1)
> bi3 <- readBiclusterResults(bf3)
> class(bicn <- readBiclusterResults(bfn)) ## show method prints error
[1] "Biclust"
attr(,"package")
[1] "biclust"
> 
> ## combine
> combineBiclusts(bi3, bi3)

An object of class Biclust 

call:
	NULL

Number of Clusters found:  6 

First  5  Cluster sizes:
                   BC 1 BC 2 BC 3 BC 4 BC 5
Number of Rows:       2    1    2    2    1
Number of Columns:    2    2    1    2    2


> 
> ## combine with empty bicluster objects
> combineBiclusts(bi3, bi3, bicn)

An object of class Biclust 

call:
	NULL

Number of Clusters found:  6 

First  5  Cluster sizes:
                   BC 1 BC 2 BC 3 BC 4 BC 5
Number of Rows:       2    1    2    2    1
Number of Columns:    2    2    1    2    2


> 
> proc.time()
   user  system elapsed 
   1.21    0.09    1.31 

rqubic.Rcheck/tests_x64/test_read.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
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(rqubic)
> source("test_utilities.R")
> 
> bf1 <- getTestFile("bic_1.out")
> bfn <- getTestFile("bic_null.out")
> bf3 <- getTestFile("bic_3.out")
> 
> bi1 <- readBiclusterResults(bf1)
> bi3 <- readBiclusterResults(bf3)
> class(bicn <- readBiclusterResults(bfn)) ## show method prints error
[1] "Biclust"
attr(,"package")
[1] "biclust"
> 
> ## combine
> combineBiclusts(bi3, bi3)

An object of class Biclust 

call:
	NULL

Number of Clusters found:  6 

First  5  Cluster sizes:
                   BC 1 BC 2 BC 3 BC 4 BC 5
Number of Rows:       2    1    2    2    1
Number of Columns:    2    2    1    2    2


> 
> ## combine with empty bicluster objects
> combineBiclusts(bi3, bi3, bicn)

An object of class Biclust 

call:
	NULL

Number of Clusters found:  6 

First  5  Cluster sizes:
                   BC 1 BC 2 BC 3 BC 4 BC 5
Number of Rows:       2    1    2    2    1
Number of Columns:    2    2    1    2    2


> 
> proc.time()
   user  system elapsed 
   1.31    0.09    1.40 

rqubic.Rcheck/tests_i386/test_utilities.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
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.

> getTestFile <- function(filename, package="rqubic") {
+   res <- system.file("extdata", filename,
+                      package=package)
+   if(file.exists(res))
+     return(res)
+   res <- sprintf("../inst/extdata/%s", filename)
+   if(file.exists(res))
+     return(res)
+   stop(sprintf("%s cannot be found either in installed pack directory or in the source directory",
+                filename))
+ }
> 
> proc.time()
   user  system elapsed 
   0.21    0.04    0.25 

rqubic.Rcheck/tests_x64/test_utilities.Rout


R version 3.5.3 (2019-03-11) -- "Great Truth"
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.

> getTestFile <- function(filename, package="rqubic") {
+   res <- system.file("extdata", filename,
+                      package=package)
+   if(file.exists(res))
+     return(res)
+   res <- sprintf("../inst/extdata/%s", filename)
+   if(file.exists(res))
+     return(res)
+   stop(sprintf("%s cannot be found either in installed pack directory or in the source directory",
+                filename))
+ }
> 
> proc.time()
   user  system elapsed 
   0.12    0.04    0.15 

Example timings

rqubic.Rcheck/examples_i386/rqubic-Ex.timings

nameusersystemelapsed
QUBICBiclusterSet-class000
combineBiclusts-methods1.310.021.33
discretize0.060.020.08
eSetDimName0.050.000.05
fcFilter0.580.000.57
features-methods0.170.030.24
generateSeeds-methods0.060.030.09
parseQubicBlocks0.110.000.19
quBicluster0.640.030.67
readBiclusterResults0.080.000.08
writeQubicInputFile0.030.000.03

rqubic.Rcheck/examples_x64/rqubic-Ex.timings

nameusersystemelapsed
QUBICBiclusterSet-class000
combineBiclusts-methods2.010.032.05
discretize0.090.020.11
eSetDimName0.080.000.08
fcFilter0.660.000.66
features-methods0.170.020.18
generateSeeds-methods0.090.000.10
parseQubicBlocks0.100.010.11
quBicluster0.650.030.69
readBiclusterResults0.080.020.09
writeQubicInputFile0.030.010.05