Back to Multiple platform build/check report for BioC 3.19:   simplified   long
ABCDEFGHIJK[L]MNOPQRSTUVWXYZ

This page was generated on 2024-03-04 11:39:25 -0500 (Mon, 04 Mar 2024).

HostnameOSArch (*)R versionInstalled pkgs
nebbiolo1Linux (Ubuntu 22.04.3 LTS)x86_64R Under development (unstable) (2024-01-16 r85808) -- "Unsuffered Consequences" 4676
palomino3Windows Server 2022 Datacenterx64R Under development (unstable) (2024-01-14 r85805 ucrt) -- "Unsuffered Consequences" 4414
merida1macOS 12.7.1 Montereyx86_64R Under development (unstable) (2024-01-16 r85808) -- "Unsuffered Consequences" 4441
kunpeng2Linux (openEuler 22.03 LTS-SP1)aarch64R Under development (unstable) (2024-01-16 r85812) -- "Unsuffered Consequences" 4417
Click on any hostname to see more info about the system (e.g. compilers)      (*) as reported by 'uname -p', except on Windows and Mac OS X

Package 1088/2251HostnameOS / ArchINSTALLBUILDCHECKBUILD BIN
limma 3.59.3  (landing page)
Gordon Smyth
Snapshot Date: 2024-03-01 14:00:22 -0500 (Fri, 01 Mar 2024)
git_url: https://git.bioconductor.org/packages/limma
git_branch: devel
git_last_commit: 90dbdf1
git_last_commit_date: 2024-02-12 22:47:42 -0500 (Mon, 12 Feb 2024)
nebbiolo1Linux (Ubuntu 22.04.3 LTS) / x86_64  OK    OK    OK  UNNEEDED, same version is already published
palomino3Windows Server 2022 Datacenter / x64  OK    OK    OK    OK  UNNEEDED, same version is already published
merida1macOS 12.7.1 Monterey / x86_64  OK    OK    OK    OK  UNNEEDED, same version is already published
kunpeng2Linux (openEuler 22.03 LTS-SP1) / aarch64  OK    OK    OK  

CHECK results for limma on merida1


To the developers/maintainers of the limma package:
- Allow up to 24 hours (and sometimes 48 hours) for your latest push to git@git.bioconductor.org:packages/limma.git to reflect on this report. See Troubleshooting Build Report for more information.
- Use the following Renviron settings to reproduce errors and warnings.
- If 'R CMD check' started to fail recently on the Linux builder(s) over a missing dependency, add the missing dependency to 'Suggests:' in your DESCRIPTION file. See Renviron.bioc for more information.

raw results


Summary

Package: limma
Version: 3.59.3
Command: /Library/Frameworks/R.framework/Resources/bin/R CMD check --install=check:limma.install-out.txt --library=/Library/Frameworks/R.framework/Resources/library --no-vignettes --timings limma_3.59.3.tar.gz
StartedAt: 2024-03-02 05:59:11 -0500 (Sat, 02 Mar 2024)
EndedAt: 2024-03-02 06:03:00 -0500 (Sat, 02 Mar 2024)
EllapsedTime: 228.1 seconds
RetCode: 0
Status:   OK  
CheckDir: limma.Rcheck
Warnings: 0

Command output

##############################################################################
##############################################################################
###
### Running command:
###
###   /Library/Frameworks/R.framework/Resources/bin/R CMD check --install=check:limma.install-out.txt --library=/Library/Frameworks/R.framework/Resources/library --no-vignettes --timings limma_3.59.3.tar.gz
###
##############################################################################
##############################################################################


* using log directory ‘/Users/biocbuild/bbs-3.19-bioc/meat/limma.Rcheck’
* using R Under development (unstable) (2024-01-16 r85808)
* using platform: x86_64-apple-darwin20
* R was compiled by
    Apple clang version 14.0.0 (clang-1400.0.29.202)
    GNU Fortran (GCC) 12.2.0
* running under: macOS Monterey 12.7.1
* using session charset: UTF-8
* using option ‘--no-vignettes’
* checking for file ‘limma/DESCRIPTION’ ... OK
* this is package ‘limma’ version ‘3.59.3’
* checking package namespace information ... OK
* checking package dependencies ... OK
* checking if this is a source package ... OK
* checking if there is a namespace ... OK
* checking for hidden files and directories ... OK
* checking for portable file names ... OK
* checking for sufficient/correct file permissions ... OK
* checking whether package ‘limma’ can be installed ... OK
* used C compiler: ‘Apple clang version 14.0.0 (clang-1400.0.29.202)’
* used SDK: ‘MacOSX11.3.sdk’
* 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
* 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 whether startup messages can be suppressed ... 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 line endings in C/C++/Fortran sources/headers ... OK
* checking compiled code ... NOTE
Note: information on .o files is not available
* checking sizes of PDF files under ‘inst/doc’ ... OK
* checking installed files from ‘inst/doc’ ... OK
* checking files in ‘vignettes’ ... OK
* checking examples ... OK
Examples with CPU (user + system) or elapsed time > 5s
               user system elapsed
alias2Symbol 10.561  0.661  12.993
* checking for unstated dependencies in ‘tests’ ... OK
* checking tests ...
  Running ‘limma-Tests.R’
  Comparing ‘limma-Tests.Rout’ to ‘limma-Tests.Rout.save’ ... OK
 OK
* checking for unstated dependencies in vignettes ... OK
* checking package vignettes ... OK
* checking running R code from vignettes ... SKIPPED
* checking re-building of vignette outputs ... SKIPPED
* checking PDF version of manual ... OK
* DONE

Status: 1 NOTE
See
  ‘/Users/biocbuild/bbs-3.19-bioc/meat/limma.Rcheck/00check.log’
for details.



Installation output

limma.Rcheck/00install.out

##############################################################################
##############################################################################
###
### Running command:
###
###   /Library/Frameworks/R.framework/Resources/bin/R CMD INSTALL limma
###
##############################################################################
##############################################################################


* installing to library ‘/Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/library’
* installing *source* package ‘limma’ ...
** using staged installation
** libs
using C compiler: ‘Apple clang version 14.0.0 (clang-1400.0.29.202)’
using SDK: ‘MacOSX11.3.sdk’
clang -arch x86_64 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG   -I/opt/R/x86_64/include    -fPIC  -falign-functions=64 -Wall -g -O2  -c init.c -o init.o
clang -arch x86_64 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG   -I/opt/R/x86_64/include    -fPIC  -falign-functions=64 -Wall -g -O2  -c normexp.c -o normexp.o
clang -arch x86_64 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG   -I/opt/R/x86_64/include    -fPIC  -falign-functions=64 -Wall -g -O2  -c weighted_lowess.c -o weighted_lowess.o
clang -arch x86_64 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -L/Library/Frameworks/R.framework/Resources/lib -L/opt/R/x86_64/lib -o limma.so init.o normexp.o weighted_lowess.o -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
installing to /Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/library/00LOCK-limma/00new/limma/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (limma)

Tests output

limma.Rcheck/tests/limma-Tests.Rout


R Under development (unstable) (2024-01-16 r85808) -- "Unsuffered Consequences"
Copyright (C) 2024 The R Foundation for Statistical Computing
Platform: x86_64-apple-darwin20

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(limma)
> options(warnPartialMatchArgs=TRUE,warnPartialMatchAttr=TRUE,warnPartialMatchDollar=TRUE,width=120)
> 
> set.seed(0); u <- runif(100)
> 
> ### strsplit2
> 
> x <- c("ab;cd;efg","abc;def","z","")
> strsplit2(x,split=";")
     [,1]  [,2]  [,3] 
[1,] "ab"  "cd"  "efg"
[2,] "abc" "def" ""   
[3,] "z"   ""    ""   
[4,] ""    ""    ""   
> 
> ### removeext
> 
> removeExt(c("slide1.spot","slide.2.spot"))
[1] "slide1"  "slide.2"
> removeExt(c("slide1.spot","slide"))
[1] "slide1.spot" "slide"      
> 
> ### printorder
> 
> printorder(list(ngrid.r=4,ngrid.c=4,nspot.r=8,nspot.c=6),ndups=2,start="topright",npins=4)
$printorder
  [1]   6   5   4   3   2   1  12  11  10   9   8   7  18  17  16  15  14  13  24  23  22  21  20  19  30  29  28  27
 [29]  26  25  36  35  34  33  32  31  42  41  40  39  38  37  48  47  46  45  44  43   6   5   4   3   2   1  12  11
 [57]  10   9   8   7  18  17  16  15  14  13  24  23  22  21  20  19  30  29  28  27  26  25  36  35  34  33  32  31
 [85]  42  41  40  39  38  37  48  47  46  45  44  43   6   5   4   3   2   1  12  11  10   9   8   7  18  17  16  15
[113]  14  13  24  23  22  21  20  19  30  29  28  27  26  25  36  35  34  33  32  31  42  41  40  39  38  37  48  47
[141]  46  45  44  43   6   5   4   3   2   1  12  11  10   9   8   7  18  17  16  15  14  13  24  23  22  21  20  19
[169]  30  29  28  27  26  25  36  35  34  33  32  31  42  41  40  39  38  37  48  47  46  45  44  43  54  53  52  51
[197]  50  49  60  59  58  57  56  55  66  65  64  63  62  61  72  71  70  69  68  67  78  77  76  75  74  73  84  83
[225]  82  81  80  79  90  89  88  87  86  85  96  95  94  93  92  91  54  53  52  51  50  49  60  59  58  57  56  55
[253]  66  65  64  63  62  61  72  71  70  69  68  67  78  77  76  75  74  73  84  83  82  81  80  79  90  89  88  87
[281]  86  85  96  95  94  93  92  91  54  53  52  51  50  49  60  59  58  57  56  55  66  65  64  63  62  61  72  71
[309]  70  69  68  67  78  77  76  75  74  73  84  83  82  81  80  79  90  89  88  87  86  85  96  95  94  93  92  91
[337]  54  53  52  51  50  49  60  59  58  57  56  55  66  65  64  63  62  61  72  71  70  69  68  67  78  77  76  75
[365]  74  73  84  83  82  81  80  79  90  89  88  87  86  85  96  95  94  93  92  91 102 101 100  99  98  97 108 107
[393] 106 105 104 103 114 113 112 111 110 109 120 119 118 117 116 115 126 125 124 123 122 121 132 131 130 129 128 127
[421] 138 137 136 135 134 133 144 143 142 141 140 139 102 101 100  99  98  97 108 107 106 105 104 103 114 113 112 111
[449] 110 109 120 119 118 117 116 115 126 125 124 123 122 121 132 131 130 129 128 127 138 137 136 135 134 133 144 143
[477] 142 141 140 139 102 101 100  99  98  97 108 107 106 105 104 103 114 113 112 111 110 109 120 119 118 117 116 115
[505] 126 125 124 123 122 121 132 131 130 129 128 127 138 137 136 135 134 133 144 143 142 141 140 139 102 101 100  99
[533]  98  97 108 107 106 105 104 103 114 113 112 111 110 109 120 119 118 117 116 115 126 125 124 123 122 121 132 131
[561] 130 129 128 127 138 137 136 135 134 133 144 143 142 141 140 139 150 149 148 147 146 145 156 155 154 153 152 151
[589] 162 161 160 159 158 157 168 167 166 165 164 163 174 173 172 171 170 169 180 179 178 177 176 175 186 185 184 183
[617] 182 181 192 191 190 189 188 187 150 149 148 147 146 145 156 155 154 153 152 151 162 161 160 159 158 157 168 167
[645] 166 165 164 163 174 173 172 171 170 169 180 179 178 177 176 175 186 185 184 183 182 181 192 191 190 189 188 187
[673] 150 149 148 147 146 145 156 155 154 153 152 151 162 161 160 159 158 157 168 167 166 165 164 163 174 173 172 171
[701] 170 169 180 179 178 177 176 175 186 185 184 183 182 181 192 191 190 189 188 187 150 149 148 147 146 145 156 155
[729] 154 153 152 151 162 161 160 159 158 157 168 167 166 165 164 163 174 173 172 171 170 169 180 179 178 177 176 175
[757] 186 185 184 183 182 181 192 191 190 189 188 187

$plate
  [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 [58] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[115] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[172] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[229] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[286] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[343] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[400] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[457] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[514] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[571] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[628] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[685] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[742] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

$plate.r
  [1]  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4
 [39]  4  4  4  4  4  4  4  4  4  4  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3
 [77]  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2
[115]  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  1  1  1  1  1  1  1  1
[153]  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1
[191]  1  1  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8
[229]  8  8  8  8  8  8  8  8  8  8  8  8  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7
[267]  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6
[305]  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  5  5  5  5  5  5
[343]  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5
[381]  5  5  5  5 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
[419] 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
[457] 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10
[495] 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10  9  9  9  9
[533]  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
[571]  9  9  9  9  9  9 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16
[609] 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15
[647] 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14
[685] 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13
[723] 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13
[761] 13 13 13 13 13 13 13 13

$plate.c
  [1]  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21
 [39] 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14
 [77] 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7
[115] 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6
[153]  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23
[191] 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16
[229] 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15
[267] 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8
[305]  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1
[343]  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24
[381] 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17
[419] 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10
[457] 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9
[495]  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2
[533]  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19
[571] 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18
[609] 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11
[647] 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4
[685]  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3
[723]  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20
[761] 19 19 24 24 23 23 22 22

$plateposition
  [1] "p1D03" "p1D03" "p1D02" "p1D02" "p1D01" "p1D01" "p1D06" "p1D06" "p1D05" "p1D05" "p1D04" "p1D04" "p1D09" "p1D09"
 [15] "p1D08" "p1D08" "p1D07" "p1D07" "p1D12" "p1D12" "p1D11" "p1D11" "p1D10" "p1D10" "p1D15" "p1D15" "p1D14" "p1D14"
 [29] "p1D13" "p1D13" "p1D18" "p1D18" "p1D17" "p1D17" "p1D16" "p1D16" "p1D21" "p1D21" "p1D20" "p1D20" "p1D19" "p1D19"
 [43] "p1D24" "p1D24" "p1D23" "p1D23" "p1D22" "p1D22" "p1C03" "p1C03" "p1C02" "p1C02" "p1C01" "p1C01" "p1C06" "p1C06"
 [57] "p1C05" "p1C05" "p1C04" "p1C04" "p1C09" "p1C09" "p1C08" "p1C08" "p1C07" "p1C07" "p1C12" "p1C12" "p1C11" "p1C11"
 [71] "p1C10" "p1C10" "p1C15" "p1C15" "p1C14" "p1C14" "p1C13" "p1C13" "p1C18" "p1C18" "p1C17" "p1C17" "p1C16" "p1C16"
 [85] "p1C21" "p1C21" "p1C20" "p1C20" "p1C19" "p1C19" "p1C24" "p1C24" "p1C23" "p1C23" "p1C22" "p1C22" "p1B03" "p1B03"
 [99] "p1B02" "p1B02" "p1B01" "p1B01" "p1B06" "p1B06" "p1B05" "p1B05" "p1B04" "p1B04" "p1B09" "p1B09" "p1B08" "p1B08"
[113] "p1B07" "p1B07" "p1B12" "p1B12" "p1B11" "p1B11" "p1B10" "p1B10" "p1B15" "p1B15" "p1B14" "p1B14" "p1B13" "p1B13"
[127] "p1B18" "p1B18" "p1B17" "p1B17" "p1B16" "p1B16" "p1B21" "p1B21" "p1B20" "p1B20" "p1B19" "p1B19" "p1B24" "p1B24"
[141] "p1B23" "p1B23" "p1B22" "p1B22" "p1A03" "p1A03" "p1A02" "p1A02" "p1A01" "p1A01" "p1A06" "p1A06" "p1A05" "p1A05"
[155] "p1A04" "p1A04" "p1A09" "p1A09" "p1A08" "p1A08" "p1A07" "p1A07" "p1A12" "p1A12" "p1A11" "p1A11" "p1A10" "p1A10"
[169] "p1A15" "p1A15" "p1A14" "p1A14" "p1A13" "p1A13" "p1A18" "p1A18" "p1A17" "p1A17" "p1A16" "p1A16" "p1A21" "p1A21"
[183] "p1A20" "p1A20" "p1A19" "p1A19" "p1A24" "p1A24" "p1A23" "p1A23" "p1A22" "p1A22" "p1H03" "p1H03" "p1H02" "p1H02"
[197] "p1H01" "p1H01" "p1H06" "p1H06" "p1H05" "p1H05" "p1H04" "p1H04" "p1H09" "p1H09" "p1H08" "p1H08" "p1H07" "p1H07"
[211] "p1H12" "p1H12" "p1H11" "p1H11" "p1H10" "p1H10" "p1H15" "p1H15" "p1H14" "p1H14" "p1H13" "p1H13" "p1H18" "p1H18"
[225] "p1H17" "p1H17" "p1H16" "p1H16" "p1H21" "p1H21" "p1H20" "p1H20" "p1H19" "p1H19" "p1H24" "p1H24" "p1H23" "p1H23"
[239] "p1H22" "p1H22" "p1G03" "p1G03" "p1G02" "p1G02" "p1G01" "p1G01" "p1G06" "p1G06" "p1G05" "p1G05" "p1G04" "p1G04"
[253] "p1G09" "p1G09" "p1G08" "p1G08" "p1G07" "p1G07" "p1G12" "p1G12" "p1G11" "p1G11" "p1G10" "p1G10" "p1G15" "p1G15"
[267] "p1G14" "p1G14" "p1G13" "p1G13" "p1G18" "p1G18" "p1G17" "p1G17" "p1G16" "p1G16" "p1G21" "p1G21" "p1G20" "p1G20"
[281] "p1G19" "p1G19" "p1G24" "p1G24" "p1G23" "p1G23" "p1G22" "p1G22" "p1F03" "p1F03" "p1F02" "p1F02" "p1F01" "p1F01"
[295] "p1F06" "p1F06" "p1F05" "p1F05" "p1F04" "p1F04" "p1F09" "p1F09" "p1F08" "p1F08" "p1F07" "p1F07" "p1F12" "p1F12"
[309] "p1F11" "p1F11" "p1F10" "p1F10" "p1F15" "p1F15" "p1F14" "p1F14" "p1F13" "p1F13" "p1F18" "p1F18" "p1F17" "p1F17"
[323] "p1F16" "p1F16" "p1F21" "p1F21" "p1F20" "p1F20" "p1F19" "p1F19" "p1F24" "p1F24" "p1F23" "p1F23" "p1F22" "p1F22"
[337] "p1E03" "p1E03" "p1E02" "p1E02" "p1E01" "p1E01" "p1E06" "p1E06" "p1E05" "p1E05" "p1E04" "p1E04" "p1E09" "p1E09"
[351] "p1E08" "p1E08" "p1E07" "p1E07" "p1E12" "p1E12" "p1E11" "p1E11" "p1E10" "p1E10" "p1E15" "p1E15" "p1E14" "p1E14"
[365] "p1E13" "p1E13" "p1E18" "p1E18" "p1E17" "p1E17" "p1E16" "p1E16" "p1E21" "p1E21" "p1E20" "p1E20" "p1E19" "p1E19"
[379] "p1E24" "p1E24" "p1E23" "p1E23" "p1E22" "p1E22" "p1L03" "p1L03" "p1L02" "p1L02" "p1L01" "p1L01" "p1L06" "p1L06"
[393] "p1L05" "p1L05" "p1L04" "p1L04" "p1L09" "p1L09" "p1L08" "p1L08" "p1L07" "p1L07" "p1L12" "p1L12" "p1L11" "p1L11"
[407] "p1L10" "p1L10" "p1L15" "p1L15" "p1L14" "p1L14" "p1L13" "p1L13" "p1L18" "p1L18" "p1L17" "p1L17" "p1L16" "p1L16"
[421] "p1L21" "p1L21" "p1L20" "p1L20" "p1L19" "p1L19" "p1L24" "p1L24" "p1L23" "p1L23" "p1L22" "p1L22" "p1K03" "p1K03"
[435] "p1K02" "p1K02" "p1K01" "p1K01" "p1K06" "p1K06" "p1K05" "p1K05" "p1K04" "p1K04" "p1K09" "p1K09" "p1K08" "p1K08"
[449] "p1K07" "p1K07" "p1K12" "p1K12" "p1K11" "p1K11" "p1K10" "p1K10" "p1K15" "p1K15" "p1K14" "p1K14" "p1K13" "p1K13"
[463] "p1K18" "p1K18" "p1K17" "p1K17" "p1K16" "p1K16" "p1K21" "p1K21" "p1K20" "p1K20" "p1K19" "p1K19" "p1K24" "p1K24"
[477] "p1K23" "p1K23" "p1K22" "p1K22" "p1J03" "p1J03" "p1J02" "p1J02" "p1J01" "p1J01" "p1J06" "p1J06" "p1J05" "p1J05"
[491] "p1J04" "p1J04" "p1J09" "p1J09" "p1J08" "p1J08" "p1J07" "p1J07" "p1J12" "p1J12" "p1J11" "p1J11" "p1J10" "p1J10"
[505] "p1J15" "p1J15" "p1J14" "p1J14" "p1J13" "p1J13" "p1J18" "p1J18" "p1J17" "p1J17" "p1J16" "p1J16" "p1J21" "p1J21"
[519] "p1J20" "p1J20" "p1J19" "p1J19" "p1J24" "p1J24" "p1J23" "p1J23" "p1J22" "p1J22" "p1I03" "p1I03" "p1I02" "p1I02"
[533] "p1I01" "p1I01" "p1I06" "p1I06" "p1I05" "p1I05" "p1I04" "p1I04" "p1I09" "p1I09" "p1I08" "p1I08" "p1I07" "p1I07"
[547] "p1I12" "p1I12" "p1I11" "p1I11" "p1I10" "p1I10" "p1I15" "p1I15" "p1I14" "p1I14" "p1I13" "p1I13" "p1I18" "p1I18"
[561] "p1I17" "p1I17" "p1I16" "p1I16" "p1I21" "p1I21" "p1I20" "p1I20" "p1I19" "p1I19" "p1I24" "p1I24" "p1I23" "p1I23"
[575] "p1I22" "p1I22" "p1P03" "p1P03" "p1P02" "p1P02" "p1P01" "p1P01" "p1P06" "p1P06" "p1P05" "p1P05" "p1P04" "p1P04"
[589] "p1P09" "p1P09" "p1P08" "p1P08" "p1P07" "p1P07" "p1P12" "p1P12" "p1P11" "p1P11" "p1P10" "p1P10" "p1P15" "p1P15"
[603] "p1P14" "p1P14" "p1P13" "p1P13" "p1P18" "p1P18" "p1P17" "p1P17" "p1P16" "p1P16" "p1P21" "p1P21" "p1P20" "p1P20"
[617] "p1P19" "p1P19" "p1P24" "p1P24" "p1P23" "p1P23" "p1P22" "p1P22" "p1O03" "p1O03" "p1O02" "p1O02" "p1O01" "p1O01"
[631] "p1O06" "p1O06" "p1O05" "p1O05" "p1O04" "p1O04" "p1O09" "p1O09" "p1O08" "p1O08" "p1O07" "p1O07" "p1O12" "p1O12"
[645] "p1O11" "p1O11" "p1O10" "p1O10" "p1O15" "p1O15" "p1O14" "p1O14" "p1O13" "p1O13" "p1O18" "p1O18" "p1O17" "p1O17"
[659] "p1O16" "p1O16" "p1O21" "p1O21" "p1O20" "p1O20" "p1O19" "p1O19" "p1O24" "p1O24" "p1O23" "p1O23" "p1O22" "p1O22"
[673] "p1N03" "p1N03" "p1N02" "p1N02" "p1N01" "p1N01" "p1N06" "p1N06" "p1N05" "p1N05" "p1N04" "p1N04" "p1N09" "p1N09"
[687] "p1N08" "p1N08" "p1N07" "p1N07" "p1N12" "p1N12" "p1N11" "p1N11" "p1N10" "p1N10" "p1N15" "p1N15" "p1N14" "p1N14"
[701] "p1N13" "p1N13" "p1N18" "p1N18" "p1N17" "p1N17" "p1N16" "p1N16" "p1N21" "p1N21" "p1N20" "p1N20" "p1N19" "p1N19"
[715] "p1N24" "p1N24" "p1N23" "p1N23" "p1N22" "p1N22" "p1M03" "p1M03" "p1M02" "p1M02" "p1M01" "p1M01" "p1M06" "p1M06"
[729] "p1M05" "p1M05" "p1M04" "p1M04" "p1M09" "p1M09" "p1M08" "p1M08" "p1M07" "p1M07" "p1M12" "p1M12" "p1M11" "p1M11"
[743] "p1M10" "p1M10" "p1M15" "p1M15" "p1M14" "p1M14" "p1M13" "p1M13" "p1M18" "p1M18" "p1M17" "p1M17" "p1M16" "p1M16"
[757] "p1M21" "p1M21" "p1M20" "p1M20" "p1M19" "p1M19" "p1M24" "p1M24" "p1M23" "p1M23" "p1M22" "p1M22"

> printorder(list(ngrid.r=4,ngrid.c=4,nspot.r=8,nspot.c=6))
$printorder
  [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
 [39] 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
 [77] 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18
[115] 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8
[153]  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
[191] 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
[229] 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
[267] 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16
[305] 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6
[343]  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
[381] 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
[419] 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
[457] 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14
[495] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4
[533]  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
[571] 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
[609] 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22
[647] 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12
[685] 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2
[723]  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
[761] 41 42 43 44 45 46 47 48

$plate
  [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1
 [58] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[115] 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2
[172] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2
[229] 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[286] 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1
[343] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[400] 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[457] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2
[514] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[571] 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1
[628] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1
[685] 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[742] 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

$plate.r
  [1]  4  4  4  4  4  4  8  8  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  4  4  4  4  4  4  8  8  8  8  8  8 12 12
 [39] 12 12 12 12 16 16 16 16 16 16  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  3  3  3  3
 [77]  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10
[115] 14 14 14 14 14 14  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10 14 14 14 14 14 14  1  1  1  1  1  1  5  5
[153]  5  5  5  5  9  9  9  9  9  9 13 13 13 13 13 13  1  1  1  1  1  1  5  5  5  5  5  5  9  9  9  9  9  9 13 13 13 13
[191] 13 13  4  4  4  4  4  4  8  8  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  4  4  4  4  4  4  8  8  8  8  8  8
[229] 12 12 12 12 12 12 16 16 16 16 16 16  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  3  3
[267]  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10
[305] 10 10 14 14 14 14 14 14  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10 14 14 14 14 14 14  1  1  1  1  1  1
[343]  5  5  5  5  5  5  9  9  9  9  9  9 13 13 13 13 13 13  1  1  1  1  1  1  5  5  5  5  5  5  9  9  9  9  9  9 13 13
[381] 13 13 13 13  4  4  4  4  4  4  8  8  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  4  4  4  4  4  4  8  8  8  8
[419]  8  8 12 12 12 12 12 12 16 16 16 16 16 16  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15
[457]  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  2  2  2  2  2  2  6  6  6  6  6  6 10 10
[495] 10 10 10 10 14 14 14 14 14 14  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10 14 14 14 14 14 14  1  1  1  1
[533]  1  1  5  5  5  5  5  5  9  9  9  9  9  9 13 13 13 13 13 13  1  1  1  1  1  1  5  5  5  5  5  5  9  9  9  9  9  9
[571] 13 13 13 13 13 13  4  4  4  4  4  4  8  8  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  4  4  4  4  4  4  8  8
[609]  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15
[647] 15 15  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  2  2  2  2  2  2  6  6  6  6  6  6
[685] 10 10 10 10 10 10 14 14 14 14 14 14  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10 14 14 14 14 14 14  1  1
[723]  1  1  1  1  5  5  5  5  5  5  9  9  9  9  9  9 13 13 13 13 13 13  1  1  1  1  1  1  5  5  5  5  5  5  9  9  9  9
[761]  9  9 13 13 13 13 13 13

$plate.c
  [1]  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5
 [39]  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13
 [77] 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21
[115]  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5
[153]  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13
[191] 17 21  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22
[229]  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6
[267] 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14
[305] 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22
[343]  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6
[381] 10 14 18 22  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15
[419] 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23
[457]  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7
[495] 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15
[533] 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23
[571]  3  7 11 15 19 23  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8
[609] 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16
[647] 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24
[685]  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8
[723] 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16
[761] 20 24  4  8 12 16 20 24

$plateposition
  [1] "p1D01" "p1D05" "p1D09" "p1D13" "p1D17" "p1D21" "p1H01" "p1H05" "p1H09" "p1H13" "p1H17" "p1H21" "p1L01" "p1L05"
 [15] "p1L09" "p1L13" "p1L17" "p1L21" "p1P01" "p1P05" "p1P09" "p1P13" "p1P17" "p1P21" "p2D01" "p2D05" "p2D09" "p2D13"
 [29] "p2D17" "p2D21" "p2H01" "p2H05" "p2H09" "p2H13" "p2H17" "p2H21" "p2L01" "p2L05" "p2L09" "p2L13" "p2L17" "p2L21"
 [43] "p2P01" "p2P05" "p2P09" "p2P13" "p2P17" "p2P21" "p1C01" "p1C05" "p1C09" "p1C13" "p1C17" "p1C21" "p1G01" "p1G05"
 [57] "p1G09" "p1G13" "p1G17" "p1G21" "p1K01" "p1K05" "p1K09" "p1K13" "p1K17" "p1K21" "p1O01" "p1O05" "p1O09" "p1O13"
 [71] "p1O17" "p1O21" "p2C01" "p2C05" "p2C09" "p2C13" "p2C17" "p2C21" "p2G01" "p2G05" "p2G09" "p2G13" "p2G17" "p2G21"
 [85] "p2K01" "p2K05" "p2K09" "p2K13" "p2K17" "p2K21" "p2O01" "p2O05" "p2O09" "p2O13" "p2O17" "p2O21" "p1B01" "p1B05"
 [99] "p1B09" "p1B13" "p1B17" "p1B21" "p1F01" "p1F05" "p1F09" "p1F13" "p1F17" "p1F21" "p1J01" "p1J05" "p1J09" "p1J13"
[113] "p1J17" "p1J21" "p1N01" "p1N05" "p1N09" "p1N13" "p1N17" "p1N21" "p2B01" "p2B05" "p2B09" "p2B13" "p2B17" "p2B21"
[127] "p2F01" "p2F05" "p2F09" "p2F13" "p2F17" "p2F21" "p2J01" "p2J05" "p2J09" "p2J13" "p2J17" "p2J21" "p2N01" "p2N05"
[141] "p2N09" "p2N13" "p2N17" "p2N21" "p1A01" "p1A05" "p1A09" "p1A13" "p1A17" "p1A21" "p1E01" "p1E05" "p1E09" "p1E13"
[155] "p1E17" "p1E21" "p1I01" "p1I05" "p1I09" "p1I13" "p1I17" "p1I21" "p1M01" "p1M05" "p1M09" "p1M13" "p1M17" "p1M21"
[169] "p2A01" "p2A05" "p2A09" "p2A13" "p2A17" "p2A21" "p2E01" "p2E05" "p2E09" "p2E13" "p2E17" "p2E21" "p2I01" "p2I05"
[183] "p2I09" "p2I13" "p2I17" "p2I21" "p2M01" "p2M05" "p2M09" "p2M13" "p2M17" "p2M21" "p1D02" "p1D06" "p1D10" "p1D14"
[197] "p1D18" "p1D22" "p1H02" "p1H06" "p1H10" "p1H14" "p1H18" "p1H22" "p1L02" "p1L06" "p1L10" "p1L14" "p1L18" "p1L22"
[211] "p1P02" "p1P06" "p1P10" "p1P14" "p1P18" "p1P22" "p2D02" "p2D06" "p2D10" "p2D14" "p2D18" "p2D22" "p2H02" "p2H06"
[225] "p2H10" "p2H14" "p2H18" "p2H22" "p2L02" "p2L06" "p2L10" "p2L14" "p2L18" "p2L22" "p2P02" "p2P06" "p2P10" "p2P14"
[239] "p2P18" "p2P22" "p1C02" "p1C06" "p1C10" "p1C14" "p1C18" "p1C22" "p1G02" "p1G06" "p1G10" "p1G14" "p1G18" "p1G22"
[253] "p1K02" "p1K06" "p1K10" "p1K14" "p1K18" "p1K22" "p1O02" "p1O06" "p1O10" "p1O14" "p1O18" "p1O22" "p2C02" "p2C06"
[267] "p2C10" "p2C14" "p2C18" "p2C22" "p2G02" "p2G06" "p2G10" "p2G14" "p2G18" "p2G22" "p2K02" "p2K06" "p2K10" "p2K14"
[281] "p2K18" "p2K22" "p2O02" "p2O06" "p2O10" "p2O14" "p2O18" "p2O22" "p1B02" "p1B06" "p1B10" "p1B14" "p1B18" "p1B22"
[295] "p1F02" "p1F06" "p1F10" "p1F14" "p1F18" "p1F22" "p1J02" "p1J06" "p1J10" "p1J14" "p1J18" "p1J22" "p1N02" "p1N06"
[309] "p1N10" "p1N14" "p1N18" "p1N22" "p2B02" "p2B06" "p2B10" "p2B14" "p2B18" "p2B22" "p2F02" "p2F06" "p2F10" "p2F14"
[323] "p2F18" "p2F22" "p2J02" "p2J06" "p2J10" "p2J14" "p2J18" "p2J22" "p2N02" "p2N06" "p2N10" "p2N14" "p2N18" "p2N22"
[337] "p1A02" "p1A06" "p1A10" "p1A14" "p1A18" "p1A22" "p1E02" "p1E06" "p1E10" "p1E14" "p1E18" "p1E22" "p1I02" "p1I06"
[351] "p1I10" "p1I14" "p1I18" "p1I22" "p1M02" "p1M06" "p1M10" "p1M14" "p1M18" "p1M22" "p2A02" "p2A06" "p2A10" "p2A14"
[365] "p2A18" "p2A22" "p2E02" "p2E06" "p2E10" "p2E14" "p2E18" "p2E22" "p2I02" "p2I06" "p2I10" "p2I14" "p2I18" "p2I22"
[379] "p2M02" "p2M06" "p2M10" "p2M14" "p2M18" "p2M22" "p1D03" "p1D07" "p1D11" "p1D15" "p1D19" "p1D23" "p1H03" "p1H07"
[393] "p1H11" "p1H15" "p1H19" "p1H23" "p1L03" "p1L07" "p1L11" "p1L15" "p1L19" "p1L23" "p1P03" "p1P07" "p1P11" "p1P15"
[407] "p1P19" "p1P23" "p2D03" "p2D07" "p2D11" "p2D15" "p2D19" "p2D23" "p2H03" "p2H07" "p2H11" "p2H15" "p2H19" "p2H23"
[421] "p2L03" "p2L07" "p2L11" "p2L15" "p2L19" "p2L23" "p2P03" "p2P07" "p2P11" "p2P15" "p2P19" "p2P23" "p1C03" "p1C07"
[435] "p1C11" "p1C15" "p1C19" "p1C23" "p1G03" "p1G07" "p1G11" "p1G15" "p1G19" "p1G23" "p1K03" "p1K07" "p1K11" "p1K15"
[449] "p1K19" "p1K23" "p1O03" "p1O07" "p1O11" "p1O15" "p1O19" "p1O23" "p2C03" "p2C07" "p2C11" "p2C15" "p2C19" "p2C23"
[463] "p2G03" "p2G07" "p2G11" "p2G15" "p2G19" "p2G23" "p2K03" "p2K07" "p2K11" "p2K15" "p2K19" "p2K23" "p2O03" "p2O07"
[477] "p2O11" "p2O15" "p2O19" "p2O23" "p1B03" "p1B07" "p1B11" "p1B15" "p1B19" "p1B23" "p1F03" "p1F07" "p1F11" "p1F15"
[491] "p1F19" "p1F23" "p1J03" "p1J07" "p1J11" "p1J15" "p1J19" "p1J23" "p1N03" "p1N07" "p1N11" "p1N15" "p1N19" "p1N23"
[505] "p2B03" "p2B07" "p2B11" "p2B15" "p2B19" "p2B23" "p2F03" "p2F07" "p2F11" "p2F15" "p2F19" "p2F23" "p2J03" "p2J07"
[519] "p2J11" "p2J15" "p2J19" "p2J23" "p2N03" "p2N07" "p2N11" "p2N15" "p2N19" "p2N23" "p1A03" "p1A07" "p1A11" "p1A15"
[533] "p1A19" "p1A23" "p1E03" "p1E07" "p1E11" "p1E15" "p1E19" "p1E23" "p1I03" "p1I07" "p1I11" "p1I15" "p1I19" "p1I23"
[547] "p1M03" "p1M07" "p1M11" "p1M15" "p1M19" "p1M23" "p2A03" "p2A07" "p2A11" "p2A15" "p2A19" "p2A23" "p2E03" "p2E07"
[561] "p2E11" "p2E15" "p2E19" "p2E23" "p2I03" "p2I07" "p2I11" "p2I15" "p2I19" "p2I23" "p2M03" "p2M07" "p2M11" "p2M15"
[575] "p2M19" "p2M23" "p1D04" "p1D08" "p1D12" "p1D16" "p1D20" "p1D24" "p1H04" "p1H08" "p1H12" "p1H16" "p1H20" "p1H24"
[589] "p1L04" "p1L08" "p1L12" "p1L16" "p1L20" "p1L24" "p1P04" "p1P08" "p1P12" "p1P16" "p1P20" "p1P24" "p2D04" "p2D08"
[603] "p2D12" "p2D16" "p2D20" "p2D24" "p2H04" "p2H08" "p2H12" "p2H16" "p2H20" "p2H24" "p2L04" "p2L08" "p2L12" "p2L16"
[617] "p2L20" "p2L24" "p2P04" "p2P08" "p2P12" "p2P16" "p2P20" "p2P24" "p1C04" "p1C08" "p1C12" "p1C16" "p1C20" "p1C24"
[631] "p1G04" "p1G08" "p1G12" "p1G16" "p1G20" "p1G24" "p1K04" "p1K08" "p1K12" "p1K16" "p1K20" "p1K24" "p1O04" "p1O08"
[645] "p1O12" "p1O16" "p1O20" "p1O24" "p2C04" "p2C08" "p2C12" "p2C16" "p2C20" "p2C24" "p2G04" "p2G08" "p2G12" "p2G16"
[659] "p2G20" "p2G24" "p2K04" "p2K08" "p2K12" "p2K16" "p2K20" "p2K24" "p2O04" "p2O08" "p2O12" "p2O16" "p2O20" "p2O24"
[673] "p1B04" "p1B08" "p1B12" "p1B16" "p1B20" "p1B24" "p1F04" "p1F08" "p1F12" "p1F16" "p1F20" "p1F24" "p1J04" "p1J08"
[687] "p1J12" "p1J16" "p1J20" "p1J24" "p1N04" "p1N08" "p1N12" "p1N16" "p1N20" "p1N24" "p2B04" "p2B08" "p2B12" "p2B16"
[701] "p2B20" "p2B24" "p2F04" "p2F08" "p2F12" "p2F16" "p2F20" "p2F24" "p2J04" "p2J08" "p2J12" "p2J16" "p2J20" "p2J24"
[715] "p2N04" "p2N08" "p2N12" "p2N16" "p2N20" "p2N24" "p1A04" "p1A08" "p1A12" "p1A16" "p1A20" "p1A24" "p1E04" "p1E08"
[729] "p1E12" "p1E16" "p1E20" "p1E24" "p1I04" "p1I08" "p1I12" "p1I16" "p1I20" "p1I24" "p1M04" "p1M08" "p1M12" "p1M16"
[743] "p1M20" "p1M24" "p2A04" "p2A08" "p2A12" "p2A16" "p2A20" "p2A24" "p2E04" "p2E08" "p2E12" "p2E16" "p2E20" "p2E24"
[757] "p2I04" "p2I08" "p2I12" "p2I16" "p2I20" "p2I24" "p2M04" "p2M08" "p2M12" "p2M16" "p2M20" "p2M24"

> 
> ### merge.rglist
> 
> R <- G <- matrix(11:14,4,2)
> rownames(R) <- rownames(G) <- c("a","a","b","c")
> RG1 <- new("RGList",list(R=R,G=G))
> R <- G <- matrix(21:24,4,2)
> rownames(R) <- rownames(G) <- c("b","a","a","c")
> RG2 <- new("RGList",list(R=R,G=G))
> merge(RG1,RG2)
An object of class "RGList"
$R
  [,1] [,2] [,3] [,4]
a   11   11   22   22
a   12   12   23   23
b   13   13   21   21
c   14   14   24   24

$G
  [,1] [,2] [,3] [,4]
a   11   11   22   22
a   12   12   23   23
b   13   13   21   21
c   14   14   24   24

> merge(RG2,RG1)
An object of class "RGList"
$R
  [,1] [,2] [,3] [,4]
b   21   21   13   13
a   22   22   11   11
a   23   23   12   12
c   24   24   14   14

$G
  [,1] [,2] [,3] [,4]
b   21   21   13   13
a   22   22   11   11
a   23   23   12   12
c   24   24   14   14

> 
> ### background correction
> 
> RG <- new("RGList", list(R=c(1,2,3,4),G=c(1,2,3,4),Rb=c(2,2,2,2),Gb=c(2,2,2,2)))
> backgroundCorrect(RG)
An object of class "RGList"
$R
     [,1]
[1,]   -1
[2,]    0
[3,]    1
[4,]    2

$G
     [,1]
[1,]   -1
[2,]    0
[3,]    1
[4,]    2

> backgroundCorrect(RG, method="half")
An object of class "RGList"
$R
     [,1]
[1,]  0.5
[2,]  0.5
[3,]  1.0
[4,]  2.0

$G
     [,1]
[1,]  0.5
[2,]  0.5
[3,]  1.0
[4,]  2.0

> backgroundCorrect(RG, method="minimum")
An object of class "RGList"
$R
     [,1]
[1,]  0.5
[2,]  0.5
[3,]  1.0
[4,]  2.0

$G
     [,1]
[1,]  0.5
[2,]  0.5
[3,]  1.0
[4,]  2.0

> backgroundCorrect(RG, offset=5)
An object of class "RGList"
$R
     [,1]
[1,]    4
[2,]    5
[3,]    6
[4,]    7

$G
     [,1]
[1,]    4
[2,]    5
[3,]    6
[4,]    7

> 
> ### loessFit
> 
> x <- 1:100
> y <- rnorm(100)
> out <- loessFit(y,x)
> f1 <- quantile(out$fitted)
> r1 <- quantile(out$residuals)
> w <- rep(1,100)
> w[1:50] <- 0.5
> out <- loessFit(y,x,weights=w,method="weightedLowess")
> f2 <- quantile(out$fitted)
> r2 <- quantile(out$residuals)
> out <- loessFit(y,x,weights=w,method="locfit")
> f3 <- quantile(out$fitted)
> r3 <- quantile(out$residuals)
> out <- loessFit(y,x,weights=w,method="loess")
> f4 <- quantile(out$fitted)
> r4 <- quantile(out$residuals)
> w <- rep(1,100)
> w[2*(1:50)] <- 0
> out <- loessFit(y,x,weights=w,method="weightedLowess")
> f5 <- quantile(out$fitted)
> r5 <- quantile(out$residuals)
> data.frame(f1,f2,f3,f4,f5)
              f1           f2          f3          f4          f5
0%   -0.78835384 -0.687432210 -0.78957137 -0.76756060 -0.63778292
25%  -0.18340154 -0.179683572 -0.18979269 -0.16773223 -0.38064318
50%  -0.11492924 -0.114796040 -0.12087983 -0.07185314 -0.15971879
75%   0.01507921 -0.008145125 -0.01857508  0.04030634  0.07839396
100%  0.21653837  0.145106033  0.19214597  0.21417361  0.51836274
> data.frame(r1,r2,r3,r4,r5)
              r1          r2          r3           r4          r5
0%   -2.04434053 -2.05132680 -2.02404318 -2.101242874 -2.22280633
25%  -0.59321065 -0.57200209 -0.58975649 -0.577887481 -0.71037756
50%   0.05874864  0.04514326  0.08335198 -0.001769806  0.06785517
75%   0.56010750  0.55124530  0.57618740  0.561454370  0.65383830
100%  2.57936026  2.64549799  2.57549257  2.402324533  2.28648835
> 
> ### normalizeWithinArrays
> 
> RG <- new("RGList",list())
> RG$R <- matrix(rexp(100*2),100,2)
> RG$G <- matrix(rexp(100*2),100,2)
> RG$Rb <- matrix(rnorm(100*2,sd=0.02),100,2)
> RG$Gb <- matrix(rnorm(100*2,sd=0.02),100,2)
> RGb <- backgroundCorrect(RG,method="normexp",normexp.method="saddle")
Array 1 corrected
Array 2 corrected
Array 1 corrected
Array 2 corrected
> summary(cbind(RGb$R,RGb$G))
       V1                V2                V3               V4        
 Min.   :0.01626   Min.   :0.01213   Min.   :0.0000   Min.   :0.0000  
 1st Qu.:0.35497   1st Qu.:0.29133   1st Qu.:0.2745   1st Qu.:0.3953  
 Median :0.71793   Median :0.70294   Median :0.6339   Median :0.8223  
 Mean   :0.90184   Mean   :1.00122   Mean   :0.9454   Mean   :1.1324  
 3rd Qu.:1.16891   3rd Qu.:1.33139   3rd Qu.:1.4059   3rd Qu.:1.4221  
 Max.   :4.56267   Max.   :6.37947   Max.   :5.0486   Max.   :6.6295  
> RGb <- backgroundCorrect(RG,method="normexp",normexp.method="mle")
Array 1 corrected
Array 2 corrected
Array 1 corrected
Array 2 corrected
> summary(cbind(RGb$R,RGb$G))
       V1                V2                V3               V4        
 Min.   :0.01701   Min.   :0.01255   Min.   :0.0000   Min.   :0.0000  
 1st Qu.:0.35423   1st Qu.:0.29118   1st Qu.:0.2745   1st Qu.:0.3953  
 Median :0.71719   Median :0.70280   Median :0.6339   Median :0.8223  
 Mean   :0.90118   Mean   :1.00110   Mean   :0.9454   Mean   :1.1324  
 3rd Qu.:1.16817   3rd Qu.:1.33124   3rd Qu.:1.4059   3rd Qu.:1.4221  
 Max.   :4.56193   Max.   :6.37932   Max.   :5.0486   Max.   :6.6295  
> MA <- normalizeWithinArrays(RGb,method="loess")
> summary(MA$M)
       V1                V2          
 Min.   :-5.8801   Min.   :-5.66985  
 1st Qu.:-1.1850   1st Qu.:-1.57014  
 Median :-0.2164   Median : 0.04823  
 Mean   : 0.0349   Mean   :-0.05481  
 3rd Qu.: 1.4964   3rd Qu.: 1.45113  
 Max.   : 7.0751   Max.   : 6.19744  
> #MA <- normalizeWithinArrays(RG[,1:2], mouse.setup, method="robustspline")
> #MA$M[1:5,]
> #MA <- normalizeWithinArrays(mouse.data, mouse.setup)
> #MA$M[1:5,]
> 
> ### normalizeBetweenArrays
> 
> MA2 <- normalizeBetweenArrays(MA,method="scale")
> MA$M[1:5,]
           [,1]       [,2]
[1,] -1.1669590  4.5558123
[2,]  0.8969743  0.3296544
[3,]  2.8245754  1.4249960
[4,] -1.8532747  0.4804851
[5,]  1.9159023 -5.5087631
> MA$A[1:5,]
            [,1]       [,2]
[1,] -2.48465011 -2.4041550
[2,] -0.79230447 -0.9002250
[3,] -0.76237200  0.2071043
[4,]  0.09281027 -1.3880965
[5,]  0.22385828 -3.0855818
> MA2 <- normalizeBetweenArrays(MA,method="quantile")
> MA$M[1:5,]
           [,1]       [,2]
[1,] -1.1669590  4.5558123
[2,]  0.8969743  0.3296544
[3,]  2.8245754  1.4249960
[4,] -1.8532747  0.4804851
[5,]  1.9159023 -5.5087631
> MA$A[1:5,]
            [,1]       [,2]
[1,] -2.48465011 -2.4041550
[2,] -0.79230447 -0.9002250
[3,] -0.76237200  0.2071043
[4,]  0.09281027 -1.3880965
[5,]  0.22385828 -3.0855818
> 
> ### unwrapdups
> 
> M <- matrix(1:12,6,2)
> unwrapdups(M,ndups=1)
     [,1] [,2]
[1,]    1    7
[2,]    2    8
[3,]    3    9
[4,]    4   10
[5,]    5   11
[6,]    6   12
> unwrapdups(M,ndups=2)
     [,1] [,2] [,3] [,4]
[1,]    1    2    7    8
[2,]    3    4    9   10
[3,]    5    6   11   12
> unwrapdups(M,ndups=3)
     [,1] [,2] [,3] [,4] [,5] [,6]
[1,]    1    2    3    7    8    9
[2,]    4    5    6   10   11   12
> unwrapdups(M,ndups=2,spacing=3)
     [,1] [,2] [,3] [,4]
[1,]    1    4    7   10
[2,]    2    5    8   11
[3,]    3    6    9   12
> 
> ### trigammaInverse
> 
> trigammaInverse(c(1e-6,NA,5,1e6))
[1] 1.000000e+06           NA 4.961687e-01 1.000001e-03
> 
> ### lmFit, eBayes, topTable
> 
> M <- matrix(rnorm(10*6,sd=0.3),10,6)
> rownames(M) <- LETTERS[1:10]
> M[1,1:3] <- M[1,1:3] + 2
> design <- cbind(First3Arrays=c(1,1,1,0,0,0),Last3Arrays=c(0,0,0,1,1,1))
> contrast.matrix <- cbind(First3=c(1,0),Last3=c(0,1),"Last3-First3"=c(-1,1))
> fit <- lmFit(M,design)
> fit2 <- eBayes(contrasts.fit(fit,contrasts=contrast.matrix))
> topTable(fit2)
       First3       Last3 Last3.First3      AveExpr           F      P.Value    adj.P.Val
A  1.77602021  0.06025114  -1.71576906  0.918135675 50.91471061 7.727200e-23 7.727200e-22
D -0.05454069  0.39127869   0.44581938  0.168369004  2.51638838 8.075072e-02 3.758388e-01
F -0.16249607 -0.33009728  -0.16760121 -0.246296671  2.18256779 1.127516e-01 3.758388e-01
G  0.30852468 -0.06873462  -0.37725930  0.119895035  1.61088775 1.997102e-01 4.992756e-01
H -0.16942269  0.20578118   0.37520387  0.018179245  1.14554368 3.180510e-01 6.361019e-01
J  0.21417623  0.07074940  -0.14342683  0.142462814  0.82029274 4.403027e-01 7.338379e-01
C -0.12236781  0.15095948   0.27332729  0.014295836  0.60885003 5.439761e-01 7.382414e-01
B -0.11982833  0.13529287   0.25512120  0.007732271  0.52662792 5.905931e-01 7.382414e-01
E  0.01897934  0.10434934   0.08536999  0.061664340  0.18136849 8.341279e-01 9.268088e-01
I -0.04720963  0.03996397   0.08717360 -0.003622829  0.06168476 9.401792e-01 9.401792e-01
> topTable(fit2,coef=3,resort.by="logFC")
        logFC      AveExpr          t      P.Value    adj.P.Val         B
D  0.44581938  0.168369004  1.7901232 8.100587e-02 3.494414e-01 -5.323150
H  0.37520387  0.018179245  1.5065768 1.397766e-01 3.494414e-01 -5.785971
C  0.27332729  0.014295836  1.0975061 2.789833e-01 5.196681e-01 -6.313399
B  0.25512120  0.007732271  1.0244023 3.118009e-01 5.196681e-01 -6.390202
I  0.08717360 -0.003622829  0.3500330 7.281504e-01 7.335508e-01 -6.849117
E  0.08536999  0.061664340  0.3427908 7.335508e-01 7.335508e-01 -6.851601
J -0.14342683  0.142462814 -0.5759097 5.679026e-01 7.098782e-01 -6.745563
F -0.16760121 -0.246296671 -0.6729784 5.048308e-01 7.098782e-01 -6.685541
G -0.37725930  0.119895035 -1.5148301 1.376783e-01 3.494414e-01 -5.773625
A -1.71576906  0.918135675 -6.8894222 2.674199e-08 2.674199e-07 16.590631
> topTable(fit2,coef=3,resort.by="p")
        logFC      AveExpr          t      P.Value    adj.P.Val         B
A -1.71576906  0.918135675 -6.8894222 2.674199e-08 2.674199e-07 16.590631
D  0.44581938  0.168369004  1.7901232 8.100587e-02 3.494414e-01 -5.323150
G -0.37725930  0.119895035 -1.5148301 1.376783e-01 3.494414e-01 -5.773625
H  0.37520387  0.018179245  1.5065768 1.397766e-01 3.494414e-01 -5.785971
C  0.27332729  0.014295836  1.0975061 2.789833e-01 5.196681e-01 -6.313399
B  0.25512120  0.007732271  1.0244023 3.118009e-01 5.196681e-01 -6.390202
F -0.16760121 -0.246296671 -0.6729784 5.048308e-01 7.098782e-01 -6.685541
J -0.14342683  0.142462814 -0.5759097 5.679026e-01 7.098782e-01 -6.745563
I  0.08717360 -0.003622829  0.3500330 7.281504e-01 7.335508e-01 -6.849117
E  0.08536999  0.061664340  0.3427908 7.335508e-01 7.335508e-01 -6.851601
> topTable(fit2,coef=3,sort.by="logFC",resort.by="t")
        logFC      AveExpr          t      P.Value    adj.P.Val         B
D  0.44581938  0.168369004  1.7901232 8.100587e-02 3.494414e-01 -5.323150
H  0.37520387  0.018179245  1.5065768 1.397766e-01 3.494414e-01 -5.785971
C  0.27332729  0.014295836  1.0975061 2.789833e-01 5.196681e-01 -6.313399
B  0.25512120  0.007732271  1.0244023 3.118009e-01 5.196681e-01 -6.390202
I  0.08717360 -0.003622829  0.3500330 7.281504e-01 7.335508e-01 -6.849117
E  0.08536999  0.061664340  0.3427908 7.335508e-01 7.335508e-01 -6.851601
J -0.14342683  0.142462814 -0.5759097 5.679026e-01 7.098782e-01 -6.745563
F -0.16760121 -0.246296671 -0.6729784 5.048308e-01 7.098782e-01 -6.685541
G -0.37725930  0.119895035 -1.5148301 1.376783e-01 3.494414e-01 -5.773625
A -1.71576906  0.918135675 -6.8894222 2.674199e-08 2.674199e-07 16.590631
> topTable(fit2,coef=3,resort.by="B")
        logFC      AveExpr          t      P.Value    adj.P.Val         B
A -1.71576906  0.918135675 -6.8894222 2.674199e-08 2.674199e-07 16.590631
D  0.44581938  0.168369004  1.7901232 8.100587e-02 3.494414e-01 -5.323150
G -0.37725930  0.119895035 -1.5148301 1.376783e-01 3.494414e-01 -5.773625
H  0.37520387  0.018179245  1.5065768 1.397766e-01 3.494414e-01 -5.785971
C  0.27332729  0.014295836  1.0975061 2.789833e-01 5.196681e-01 -6.313399
B  0.25512120  0.007732271  1.0244023 3.118009e-01 5.196681e-01 -6.390202
F -0.16760121 -0.246296671 -0.6729784 5.048308e-01 7.098782e-01 -6.685541
J -0.14342683  0.142462814 -0.5759097 5.679026e-01 7.098782e-01 -6.745563
I  0.08717360 -0.003622829  0.3500330 7.281504e-01 7.335508e-01 -6.849117
E  0.08536999  0.061664340  0.3427908 7.335508e-01 7.335508e-01 -6.851601
> topTable(fit2,coef=3,lfc=1)
      logFC   AveExpr         t      P.Value    adj.P.Val        B
A -1.715769 0.9181357 -6.889422 2.674199e-08 2.674199e-07 16.59063
> topTable(fit2,coef=3,p.value=0.2)
      logFC   AveExpr         t      P.Value    adj.P.Val        B
A -1.715769 0.9181357 -6.889422 2.674199e-08 2.674199e-07 16.59063
> topTable(fit2,coef=3,p.value=0.2,lfc=0.5)
      logFC   AveExpr         t      P.Value    adj.P.Val        B
A -1.715769 0.9181357 -6.889422 2.674199e-08 2.674199e-07 16.59063
> topTable(fit2,coef=3,p.value=0.2,lfc=0.5,sort.by="none")
      logFC   AveExpr         t      P.Value    adj.P.Val        B
A -1.715769 0.9181357 -6.889422 2.674199e-08 2.674199e-07 16.59063
> contrasts.fit(fit[1:3,],contrast.matrix[,0])
An object of class "MArrayLM"
$coefficients
 
A
B
C

$rank
[1] 2

$assign
NULL

$qr
$qr
     First3Arrays Last3Arrays
[1,]   -1.7320508   0.0000000
[2,]    0.5773503  -1.7320508
[3,]    0.5773503   0.0000000
[4,]    0.0000000   0.5773503
[5,]    0.0000000   0.5773503
[6,]    0.0000000   0.5773503

$qraux
[1] 1.57735 1.00000

$pivot
[1] 1 2

$tol
[1] 1e-07

$rank
[1] 2


$df.residual
[1] 4 4 4

$sigma
        A         B         C 
0.3299787 0.3323336 0.2315815 

$cov.coefficients
<0 x 0 matrix>

$stdev.unscaled
 
A
B
C

$pivot
[1] 1 2

$Amean
          A           B           C 
0.918135675 0.007732271 0.014295836 

$method
[1] "ls"

$design
     First3Arrays Last3Arrays
[1,]            1           0
[2,]            1           0
[3,]            1           0
[4,]            0           1
[5,]            0           1
[6,]            0           1

$contrasts
    
[1,]
[2,]

> fit$coefficients[1,1] <- NA
> contrasts.fit(fit[1:3,],contrast.matrix)$coefficients
      First3      Last3 Last3-First3
A         NA 0.06025114           NA
B -0.1198283 0.13529287    0.2551212
C -0.1223678 0.15095948    0.2733273
> 
> designlist <- list(Null=matrix(1,6,1),Two=design,Three=cbind(1,c(0,0,1,1,0,0),c(0,0,0,0,1,1)))
> out <- selectModel(M,designlist)
> table(out$pref)

 Null   Two Three 
    5     3     2 
> 
> ### marray object
> 
> #suppressMessages(suppressWarnings(gotmarray <- require(marray,quietly=TRUE)))
> #if(gotmarray) {
> #	data(swirl)
> #	snorm = maNorm(swirl)
> #	fit <- lmFit(snorm, design = c(1,-1,-1,1))
> #	fit <- eBayes(fit)
> #	topTable(fit,resort.by="AveExpr")
> #}
> 
> ### duplicateCorrelation
> 
> cor.out <- duplicateCorrelation(M)
> cor.out$consensus.correlation
[1] -0.09290714
> cor.out$atanh.correlations
[1] -0.4419130  0.4088967 -0.1964978 -0.6093769  0.3730118
> 
> ### gls.series
> 
> fit <- gls.series(M,design,correlation=cor.out$cor)
> fit$coefficients
     First3Arrays Last3Arrays
[1,]   0.82809594  0.09777201
[2,]  -0.08845425  0.27111909
[3,]  -0.07175836 -0.11287397
[4,]   0.06955100  0.06852328
[5,]   0.08348330  0.05535668
> fit$stdev.unscaled
     First3Arrays Last3Arrays
[1,]    0.3888215   0.3888215
[2,]    0.3888215   0.3888215
[3,]    0.3888215   0.3888215
[4,]    0.3888215   0.3888215
[5,]    0.3888215   0.3888215
> fit$sigma
[1] 0.7630059 0.2152728 0.3350370 0.3227781 0.3405473
> fit$df.residual
[1] 10 10 10 10 10
> 
> ### mrlm
> 
> fit <- mrlm(M,design)
Warning message:
In rlm.default(x = X, y = y, weights = w, ...) :
  'rlm' failed to converge in 20 steps
> fit$coefficients
  First3Arrays Last3Arrays
A   1.75138894  0.06025114
B  -0.11982833  0.10322039
C  -0.09302502  0.15095948
D  -0.05454069  0.33700045
E   0.07927938  0.10434934
F  -0.16249607 -0.34010852
G   0.30852468 -0.06873462
H  -0.16942269  0.24392984
I  -0.04720963  0.03996397
J   0.21417623 -0.05679272
> fit$stdev.unscaled
  First3Arrays Last3Arrays
A    0.5933418   0.5773503
B    0.5773503   0.6096497
C    0.6017444   0.5773503
D    0.5773503   0.6266021
E    0.6307703   0.5773503
F    0.5773503   0.5846707
G    0.5773503   0.5773503
H    0.5773503   0.6544564
I    0.5773503   0.5773503
J    0.5773503   0.6689776
> fit$sigma
 [1] 0.2894294 0.2679396 0.2090236 0.1461395 0.2309018 0.2827476 0.2285945 0.2267556 0.3537469 0.2172409
> fit$df.residual
 [1] 4 4 4 4 4 4 4 4 4 4
> 
> # Similar to Mette Langaas 19 May 2004
> set.seed(123)
> narrays <- 9
> ngenes <- 5
> mu <- 0
> alpha <- 2
> beta <- -2
> epsilon <- matrix(rnorm(narrays*ngenes,0,1),ncol=narrays)
> X <- cbind(rep(1,9),c(0,0,0,1,1,1,0,0,0),c(0,0,0,0,0,0,1,1,1))
> dimnames(X) <- list(1:9,c("mu","alpha","beta"))
> yvec <- mu*X[,1]+alpha*X[,2]+beta*X[,3]
> ymat <- matrix(rep(yvec,ngenes),ncol=narrays,byrow=T)+epsilon
> ymat[5,1:2] <- NA
> fit <- lmFit(ymat,design=X)
> test.contr <- cbind(c(0,1,-1),c(1,1,0),c(1,0,1))
> dimnames(test.contr) <- list(c("mu","alpha","beta"),c("alpha-beta","mu+alpha","mu+beta"))
> fit2 <- contrasts.fit(fit,contrasts=test.contr)
> eBayes(fit2)
An object of class "MArrayLM"
$coefficients
     alpha-beta mu+alpha   mu+beta
[1,]   3.537333 1.677465 -1.859868
[2,]   4.355578 2.372554 -1.983024
[3,]   3.197645 1.053584 -2.144061
[4,]   2.697734 1.611443 -1.086291
[5,]   3.502304 2.051995 -1.450309

$stdev.unscaled
     alpha-beta  mu+alpha   mu+beta
[1,]  0.8164966 0.5773503 0.5773503
[2,]  0.8164966 0.5773503 0.5773503
[3,]  0.8164966 0.5773503 0.5773503
[4,]  0.8164966 0.5773503 0.5773503
[5,]  1.1547005 0.8368633 0.8368633

$sigma
[1] 1.3425032 0.4647155 1.1993444 0.9428569 0.9421509

$df.residual
[1] 6 6 6 6 4

$cov.coefficients
           alpha-beta     mu+alpha       mu+beta
alpha-beta  0.6666667 3.333333e-01 -3.333333e-01
mu+alpha    0.3333333 3.333333e-01  1.110223e-16
mu+beta    -0.3333333 1.110223e-16  3.333333e-01

$pivot
[1] 1 2 3

$rank
[1] 3

$Amean
[1]  0.2034961  0.1954604 -0.2863347  0.1188659  0.1784593

$method
[1] "ls"

$design
  mu alpha beta
1  1     0    0
2  1     0    0
3  1     0    0
4  1     1    0
5  1     1    0
6  1     1    0
7  1     0    1
8  1     0    1
9  1     0    1

$contrasts
      alpha-beta mu+alpha mu+beta
mu             0        1       1
alpha          1        1       0
beta          -1        0       1

$df.prior
[1] 9.306153

$s2.prior
[1] 0.923179

$var.prior
[1] 17.33142 17.33142 12.26855

$proportion
[1] 0.01

$s2.post
[1] 1.2677996 0.6459499 1.1251558 0.9097727 0.9124980

$t
     alpha-beta mu+alpha   mu+beta
[1,]   3.847656 2.580411 -2.860996
[2,]   6.637308 5.113018 -4.273553
[3,]   3.692066 1.720376 -3.500994
[4,]   3.464003 2.926234 -1.972606
[5,]   3.175181 2.566881 -1.814221

$df.total
[1] 15.30615 15.30615 15.30615 15.30615 13.30615

$p.value
       alpha-beta     mu+alpha      mu+beta
[1,] 1.529450e-03 0.0206493481 0.0117123495
[2,] 7.144893e-06 0.0001195844 0.0006385076
[3,] 2.109270e-03 0.1055117477 0.0031325769
[4,] 3.381970e-03 0.0102514264 0.0668844448
[5,] 7.124839e-03 0.0230888584 0.0922478630

$lods
     alpha-beta  mu+alpha    mu+beta
[1,]  -1.013417 -3.702133 -3.0332393
[2,]   3.981496  1.283349 -0.2615911
[3,]  -1.315036 -5.168621 -1.7864101
[4,]  -1.757103 -3.043209 -4.6191869
[5,]  -2.257358 -3.478267 -4.5683738

$F
[1]  7.421911 22.203107  7.608327  6.227010  5.060579

$F.p.value
[1] 5.581800e-03 2.988923e-05 5.080726e-03 1.050148e-02 2.320274e-02

> 
> ### uniquegenelist
> 
> uniquegenelist(letters[1:8],ndups=2)
[1] "a" "c" "e" "g"
> uniquegenelist(letters[1:8],ndups=2,spacing=2)
[1] "a" "b" "e" "f"
> 
> ### classifyTests
> 
> tstat <- matrix(c(0,5,0, 0,2.5,0, -2,-2,2, 1,1,1), 4, 3, byrow=TRUE)
> classifyTestsF(tstat)
TestResults matrix
     [,1] [,2] [,3]
[1,]    0    1    0
[2,]    0    0    0
[3,]   -1   -1    1
[4,]    0    0    0
> classifyTestsF(tstat,fstat.only=TRUE)
[1] 8.333333 2.083333 4.000000 1.000000
attr(,"df1")
[1] 3
attr(,"df2")
[1] Inf
> limma:::.classifyTestsP(tstat)
TestResults matrix
     [,1] [,2] [,3]
[1,]    0    1    0
[2,]    0    1    0
[3,]    0    0    0
[4,]    0    0    0
> 
> ### avereps
> 
> x <- matrix(rnorm(8*3),8,3)
> colnames(x) <- c("S1","S2","S3")
> rownames(x) <- c("b","a","a","c","c","b","b","b")
> avereps(x)
          S1         S2         S3
b -0.2353018  0.5220094  0.2302895
a -0.4347701  0.6453498 -0.6758914
c  0.3482980 -0.4820695 -0.3841313
> 
> ### roast
> 
> y <- matrix(rnorm(100*4),100,4)
> sigma <- sqrt(2/rchisq(100,df=7))
> y <- y*sigma
> design <- cbind(Intercept=1,Group=c(0,0,1,1))
> iset1 <- 1:5
> y[iset1,3:4] <- y[iset1,3:4]+3
> iset2 <- 6:10
> roast(y=y,iset1,design,contrast=2)
         Active.Prop     P.Value
Down               0 0.997999500
Up                 1 0.002250563
UpOrDown           1 0.004500000
Mixed              1 0.004500000
> roast(y=y,iset1,design,contrast=2,array.weights=c(0.5,1,0.5,1))
         Active.Prop     P.Value
Down               0 0.998749687
Up                 1 0.001500375
UpOrDown           1 0.003000000
Mixed              1 0.003000000
> w <- matrix(runif(100*4),100,4)
> roast(y=y,iset1,design,contrast=2,weights=w)
         Active.Prop     P.Value
Down               0 0.996999250
Up                 1 0.003250813
UpOrDown           1 0.006500000
Mixed              1 0.006500000
> mroast(y=y,list(set1=iset1,set2=iset2),design,contrast=2,gene.weights=runif(100))
     NGenes PropDown PropUp Direction PValue    FDR PValue.Mixed FDR.Mixed
set1      5        0      1        Up 0.0055 0.0105       0.0055    0.0105
set2      5        0      0        Up 0.2025 0.2025       0.4715    0.4715
> mroast(y=y,list(set1=iset1,set2=iset2),design,contrast=2,array.weights=c(0.5,1,0.5,1))
     NGenes PropDown PropUp Direction PValue    FDR PValue.Mixed FDR.Mixed
set1      5        0      1        Up 0.0050 0.0095        0.005    0.0095
set2      5        0      0        Up 0.6845 0.6845        0.642    0.6420
> mroast(y=y,list(set1=iset1,set2=iset2),design,contrast=2,weights=w)
     NGenes PropDown PropUp Direction PValue    FDR PValue.Mixed FDR.Mixed
set1      5        0    1.0        Up 0.0030 0.0055        0.003    0.0055
set2      5        0    0.2      Down 0.9615 0.9615        0.496    0.4960
> mroast(y=y,list(set1=iset1,set2=iset2),design,contrast=2,weights=w,array.weights=c(0.5,1,0.5,1))
     NGenes PropDown PropUp Direction PValue    FDR PValue.Mixed FDR.Mixed
set1      5        0    1.0        Up 0.0025 0.0045       0.0025    0.0045
set2      5        0    0.2      Down 0.8930 0.8930       0.4380    0.4380
> fry(y=y,list(set1=iset1,set2=iset2),design,contrast=2,weights=w,array.weights=c(0.5,1,0.5,1))
     NGenes Direction      PValue         FDR PValue.Mixed    FDR.Mixed
set1      5        Up 0.001568924 0.003137848 0.0001156464 0.0002312929
set2      5      Down 0.932105219 0.932105219 0.4315499569 0.4315499569
> rownames(y) <- paste0("Gene",1:100)
> iset1A <- rownames(y)[1:5]
> fry(y=y,index=iset1A,design,contrast=2,weights=w,array.weights=c(0.5,1,0.5,1))
     NGenes Direction      PValue PValue.Mixed
set1      5        Up 0.001568924 0.0001156464
> 
> ### camera
> 
> camera(y=y,iset1,design,contrast=2,weights=c(0.5,1,0.5,1),allow.neg.cor=TRUE,inter.gene.cor=NA)
     NGenes Correlation Direction      PValue
set1      5  -0.2481655        Up 0.001050253
> camera(y=y,list(set1=iset1,set2=iset2),design,contrast=2,allow.neg.cor=TRUE,inter.gene.cor=NA)
     NGenes Correlation Direction       PValue        FDR
set1      5  -0.2481655        Up 0.0009047749 0.00180955
set2      5   0.1719094      Down 0.9068364378 0.90683644
> camera(y=y,iset1,design,contrast=2,weights=c(0.5,1,0.5,1))
     NGenes Direction       PValue
set1      5        Up 1.105329e-10
> camera(y=y,list(set1=iset1,set2=iset2),design,contrast=2)
     NGenes Direction       PValue          FDR
set1      5        Up 7.334400e-12 1.466880e-11
set2      5      Down 8.677115e-01 8.677115e-01
> camera(y=y,iset1A,design,contrast=2)
     NGenes Direction     PValue
set1      5        Up 7.3344e-12
> 
> ### with EList arg
> 
> y <- new("EList",list(E=y))
> roast(y=y,iset1,design,contrast=2)
         Active.Prop     P.Value
Down               0 0.996999250
Up                 1 0.003250813
UpOrDown           1 0.006500000
Mixed              1 0.006500000
> camera(y=y,iset1,design,contrast=2,allow.neg.cor=TRUE,inter.gene.cor=NA)
     NGenes Correlation Direction       PValue
set1      5  -0.2481655        Up 0.0009047749
> camera(y=y,iset1,design,contrast=2)
     NGenes Direction     PValue
set1      5        Up 7.3344e-12
> 
> ### eBayes with trend
> 
> fit <- lmFit(y,design)
> fit <- eBayes(fit,trend=TRUE)
> topTable(fit,coef=2)
           logFC     AveExpr         t      P.Value  adj.P.Val          B
Gene2   3.729512  1.73488969  4.865697 0.0004854886 0.02902331  0.1596831
Gene3   3.488703  1.03931081  4.754954 0.0005804663 0.02902331 -0.0144071
Gene4   2.696676  1.74060725  3.356468 0.0063282637 0.21094212 -2.3434702
Gene1   2.391846  1.72305203  3.107124 0.0098781268 0.24695317 -2.7738874
Gene33 -1.492317 -0.07525287 -2.783817 0.0176475742 0.29965463 -3.3300835
Gene5   2.387967  1.63066783  2.773444 0.0179792778 0.29965463 -3.3478204
Gene80 -1.839760 -0.32802306 -2.503584 0.0291489863 0.37972679 -3.8049642
Gene39  1.366141 -0.27360750  2.451133 0.0320042242 0.37972679 -3.8925860
Gene95 -1.907074  1.26297763 -2.414217 0.0341754107 0.37972679 -3.9539571
Gene50  1.034777  0.01608433  2.054690 0.0642289403 0.59978803 -4.5350317
> fit$df.prior
[1] 9.098442
> fit$s2.prior
    Gene1     Gene2     Gene3     Gene4     Gene5     Gene6     Gene7     Gene8     Gene9    Gene10    Gene11    Gene12 
0.6901845 0.6977354 0.3860494 0.7014122 0.6341068 0.2926337 0.3077620 0.3058098 0.2985145 0.2832520 0.3232434 0.3279710 
   Gene13    Gene14    Gene15    Gene16    Gene17    Gene18    Gene19    Gene20    Gene21    Gene22    Gene23    Gene24 
0.2816081 0.2943502 0.3127994 0.2894802 0.2812758 0.2840051 0.2839124 0.2954261 0.2838592 0.2812704 0.3157029 0.2844541 
   Gene25    Gene26    Gene27    Gene28    Gene29    Gene30    Gene31    Gene32    Gene33    Gene34    Gene35    Gene36 
0.4778832 0.2818242 0.2930360 0.2940957 0.2941862 0.3234399 0.3164779 0.2853510 0.2988244 0.3450090 0.3048596 0.3089086 
   Gene37    Gene38    Gene39    Gene40    Gene41    Gene42    Gene43    Gene44    Gene45    Gene46    Gene47    Gene48 
0.3104534 0.4551549 0.3220008 0.2813286 0.2826027 0.2822504 0.2823330 0.3170673 0.3146173 0.3146793 0.2916540 0.2975003 
   Gene49    Gene50    Gene51    Gene52    Gene53    Gene54    Gene55    Gene56    Gene57    Gene58    Gene59    Gene60 
0.3538946 0.2907240 0.3199596 0.2816641 0.2814293 0.2996822 0.2812885 0.2896157 0.2955317 0.2815907 0.2919420 0.2849675 
   Gene61    Gene62    Gene63    Gene64    Gene65    Gene66    Gene67    Gene68    Gene69    Gene70    Gene71    Gene72 
0.3540805 0.3491713 0.2975019 0.2939325 0.2986943 0.3265466 0.3402343 0.3394927 0.2813283 0.2814440 0.3089669 0.3030850 
   Gene73    Gene74    Gene75    Gene76    Gene77    Gene78    Gene79    Gene80    Gene81    Gene82    Gene83    Gene84 
0.2859286 0.2813216 0.3475231 0.3334419 0.2949550 0.3108702 0.2959688 0.3295294 0.3413700 0.2946268 0.3029565 0.2920284 
   Gene85    Gene86    Gene87    Gene88    Gene89    Gene90    Gene91    Gene92    Gene93    Gene94    Gene95    Gene96 
0.2926205 0.2818046 0.3425116 0.2882936 0.2945459 0.3077919 0.2892134 0.2823787 0.3048049 0.2961408 0.4590012 0.2812784 
   Gene97    Gene98    Gene99   Gene100 
0.2846345 0.2819651 0.3137551 0.2856081 
> summary(fit$s2.post)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
 0.2335  0.2603  0.2997  0.3375  0.3655  0.7812 
> 
> y$E[1,1] <- NA
> y$E[1,3] <- NA
> fit <- lmFit(y,design)
> fit <- eBayes(fit,trend=TRUE)
> topTable(fit,coef=2)
           logFC     AveExpr         t      P.Value  adj.P.Val          B
Gene3   3.488703  1.03931081  4.604490 0.0007644061 0.07644061 -0.2333915
Gene2   3.729512  1.73488969  4.158038 0.0016033158 0.08016579 -0.9438583
Gene4   2.696676  1.74060725  2.898102 0.0145292666 0.44537707 -3.0530813
Gene33 -1.492317 -0.07525287 -2.784004 0.0178150826 0.44537707 -3.2456324
Gene5   2.387967  1.63066783  2.495395 0.0297982959 0.46902627 -3.7272957
Gene80 -1.839760 -0.32802306 -2.491115 0.0300256116 0.46902627 -3.7343584
Gene39  1.366141 -0.27360750  2.440729 0.0328318388 0.46902627 -3.8172597
Gene1   2.638272  1.47993643  2.227507 0.0530016060 0.58890673 -3.9537576
Gene95 -1.907074  1.26297763 -2.288870 0.0429197808 0.53649726 -4.0642439
Gene50  1.034777  0.01608433  2.063663 0.0635275235 0.60439978 -4.4204731
> fit$df.residual[1]
[1] 0
> fit$df.prior
[1] 8.971891
> fit$s2.prior
  [1] 0.7014084 0.9646561 0.4276287 0.9716476 0.8458852 0.2910492 0.3097052 0.3074225 0.2985517 0.2786374 0.3267121
 [12] 0.3316013 0.2766404 0.2932679 0.3154347 0.2869186 0.2761395 0.2799884 0.2795119 0.2946468 0.2794412 0.2761282
 [23] 0.3186442 0.2806092 0.4596465 0.2767847 0.2924541 0.2939204 0.2930568 0.3269177 0.3194905 0.2814293 0.2989389
 [34] 0.3483845 0.3062977 0.3110287 0.3127934 0.4418052 0.3254067 0.2761732 0.2780422 0.2773311 0.2776653 0.3201314
 [45] 0.3174515 0.3175199 0.2897731 0.2972785 0.3567262 0.2885556 0.3232426 0.2767207 0.2762915 0.3000062 0.2761306
 [56] 0.2870975 0.2947817 0.2766152 0.2901489 0.2813183 0.3568982 0.3724440 0.2972804 0.2927300 0.2987764 0.3301406
 [67] 0.3437962 0.3430762 0.2761729 0.2763094 0.3110958 0.3041715 0.2822004 0.2761654 0.3507694 0.3371214 0.2940441
 [78] 0.3132660 0.2953388 0.3331880 0.3448949 0.2946558 0.3040162 0.2902616 0.2910320 0.2769211 0.3459946 0.2859057
 [89] 0.2935193 0.3097398 0.2865663 0.2774968 0.3062327 0.2955576 0.5425422 0.2761214 0.2808585 0.2771484 0.3164981
[100] 0.2817725
> summary(fit$s2.post)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
 0.2296  0.2581  0.3003  0.3453  0.3652  0.9158 
> 
> ### eBayes with robust
> 
> fitr <- lmFit(y,design)
> fitr <- eBayes(fitr,robust=TRUE)
> summary(fitr$df.prior)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  6.717   9.244   9.244   9.194   9.244   9.244 
> topTable(fitr,coef=2)
           logFC     AveExpr         t      P.Value   adj.P.Val          B
Gene2   3.729512  1.73488969  7.108463 1.752774e-05 0.001752774  3.3517310
Gene3   3.488703  1.03931081  5.041209 3.526138e-04 0.017630688  0.4056329
Gene4   2.696676  1.74060725  4.697690 6.150508e-04 0.020501693 -0.1463315
Gene5   2.387967  1.63066783  3.451807 5.245019e-03 0.131125480 -2.2678836
Gene1   2.638272  1.47993643  3.317593 8.651142e-03 0.173022847 -2.4400000
Gene33 -1.492317 -0.07525287 -2.716431 1.970991e-02 0.297950865 -3.5553166
Gene95 -1.907074  1.26297763 -2.685067 2.085656e-02 0.297950865 -3.6094982
Gene80 -1.839760 -0.32802306 -2.535926 2.727440e-02 0.340929958 -3.8653107
Gene39  1.366141 -0.27360750  2.469570 3.071854e-02 0.341317083 -3.9779817
Gene50  1.034777  0.01608433  1.973040 7.357960e-02 0.632875126 -4.7877548
> fitr <- eBayes(fitr,trend=TRUE,robust=TRUE)
> summary(fitr$df.prior)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  7.809   8.972   8.972   8.949   8.972   8.972 
> topTable(fitr,coef=2)
           logFC     AveExpr         t      P.Value  adj.P.Val          B
Gene2   3.729512  1.73488969  4.754160 0.0005999064 0.05999064 -0.0218247
Gene3   3.488703  1.03931081  3.761219 0.0031618743 0.15809372 -1.6338257
Gene4   2.696676  1.74060725  3.292262 0.0071993347 0.23997782 -2.4295326
Gene33 -1.492317 -0.07525287 -3.063180 0.0108203134 0.27050784 -2.8211394
Gene50  1.034777  0.01608433  2.645717 0.0228036320 0.38815282 -3.5304767
Gene5   2.387967  1.63066783  2.633901 0.0232891695 0.38815282 -3.5503445
Gene1   2.638272  1.47993643  2.204116 0.0550613420 0.58959402 -4.0334169
Gene80 -1.839760 -0.32802306 -2.332729 0.0397331916 0.56761702 -4.0496640
Gene39  1.366141 -0.27360750  2.210665 0.0492211477 0.58959402 -4.2469578
Gene95 -1.907074  1.26297763 -2.106861 0.0589594023 0.58959402 -4.4117140
> 
> ### voom
> 
> y <- matrix(rpois(100*4,lambda=20),100,4)
> design <- cbind(Int=1,x=c(0,0,1,1))
> v <- voom(y,design)
> names(v)
[1] "E"       "weights" "design"  "targets"
> summary(v$E)
       V1              V2              V3              V4       
 Min.   :12.38   Min.   :12.32   Min.   :12.17   Min.   :12.08  
 1st Qu.:13.11   1st Qu.:13.05   1st Qu.:13.11   1st Qu.:13.03  
 Median :13.34   Median :13.28   Median :13.35   Median :13.35  
 Mean   :13.29   Mean   :13.29   Mean   :13.28   Mean   :13.28  
 3rd Qu.:13.48   3rd Qu.:13.54   3rd Qu.:13.48   3rd Qu.:13.50  
 Max.   :14.01   Max.   :13.95   Max.   :14.03   Max.   :14.05  
> summary(v$weights)
       V1               V2               V3               V4        
 Min.   : 7.729   Min.   : 7.729   Min.   : 7.729   Min.   : 7.729  
 1st Qu.:13.859   1st Qu.:15.067   1st Qu.:14.254   1st Qu.:13.592  
 Median :15.913   Median :16.621   Median :16.081   Median :16.028  
 Mean   :16.773   Mean   :18.525   Mean   :18.472   Mean   :17.112  
 3rd Qu.:18.214   3rd Qu.:20.002   3rd Qu.:18.475   3rd Qu.:18.398  
 Max.   :34.331   Max.   :34.331   Max.   :34.331   Max.   :34.331  
> 
> ### goana
> 
> EB <- c("133746","1339","134","1340","134083","134111","134147","134187","134218","134266",
+ "134353","134359","134391","134429","134430","1345","134510","134526","134549","1346",
+ "134637","1347","134701","134728","1348","134829","134860","134864","1349","134957",
+ "135","1350","1351","135112","135114","135138","135152","135154","1352","135228",
+ "135250","135293","135295","1353","135458","1355","1356","135644","135656","1357",
+ "1358","135892","1359","135924","135935","135941","135946","135948","136","1360",
+ "136051","1361","1362","136227","136242","136259","1363","136306","136319","136332",
+ "136371","1364","1365","136541","1366","136647","1368","136853","1369","136991",
+ "1370","137075","1371","137209","1373","137362","1374","137492","1375","1376",
+ "137682","137695","137735","1378","137814","137868","137872","137886","137902","137964")
> go <- goana(fit,FDR=0.8,geneid=EB)
> topGO(go,number=10,truncate.term=30)
                                     Term Ont  N Up Down        P.Up      P.Down
GO:0032502          developmental process  BP 24  4    7 0.871310423 0.001532528
GO:0070062          extracellular exosome  CC  8  0    4 1.000000000 0.003047199
GO:0065010 extracellular membrane-boun...  CC  8  0    4 1.000000000 0.003047199
GO:0043230        extracellular organelle  CC  8  0    4 1.000000000 0.003047199
GO:1903561          extracellular vesicle  CC  8  0    4 1.000000000 0.003047199
GO:0006915              apoptotic process  BP  5  4    1 0.009503355 0.416247633
GO:0008219                     cell death  BP  5  4    1 0.009503355 0.416247633
GO:0012501          programmed cell death  BP  5  4    1 0.009503355 0.416247633
GO:0042981 regulation of apoptotic pro...  BP  5  4    1 0.009503355 0.416247633
GO:0043067 regulation of programmed ce...  BP  5  4    1 0.009503355 0.416247633
> topGO(go,number=10,truncate.term=30,sort="down")
                                     Term Ont  N Up Down      P.Up      P.Down
GO:0032502          developmental process  BP 24  4    7 0.8713104 0.001532528
GO:0070062          extracellular exosome  CC  8  0    4 1.0000000 0.003047199
GO:0065010 extracellular membrane-boun...  CC  8  0    4 1.0000000 0.003047199
GO:0043230        extracellular organelle  CC  8  0    4 1.0000000 0.003047199
GO:1903561          extracellular vesicle  CC  8  0    4 1.0000000 0.003047199
GO:0032501 multicellular organismal pr...  BP 33  7    7 0.7048432 0.013750585
GO:0016485             protein processing  BP  7  1    3 0.8497705 0.020760307
GO:0031982                        vesicle  CC 20  3    5 0.8982815 0.025464546
GO:0009887     animal organ morphogenesis  BP  3  0    2 1.0000000 0.025788497
GO:0043009 chordate embryonic developm...  BP  3  0    2 1.0000000 0.025788497
> 
> proc.time()
   user  system elapsed 
 10.593   0.889  13.297 

limma.Rcheck/tests/limma-Tests.Rout.save


R version 4.3.1 (2023-06-16 ucrt) -- "Beagle Scouts"
Copyright (C) 2023 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(limma)
> options(warnPartialMatchArgs=TRUE,warnPartialMatchAttr=TRUE,warnPartialMatchDollar=TRUE,width=120)
> 
> set.seed(0); u <- runif(100)
> 
> ### strsplit2
> 
> x <- c("ab;cd;efg","abc;def","z","")
> strsplit2(x,split=";")
     [,1]  [,2]  [,3] 
[1,] "ab"  "cd"  "efg"
[2,] "abc" "def" ""   
[3,] "z"   ""    ""   
[4,] ""    ""    ""   
> 
> ### removeext
> 
> removeExt(c("slide1.spot","slide.2.spot"))
[1] "slide1"  "slide.2"
> removeExt(c("slide1.spot","slide"))
[1] "slide1.spot" "slide"      
> 
> ### printorder
> 
> printorder(list(ngrid.r=4,ngrid.c=4,nspot.r=8,nspot.c=6),ndups=2,start="topright",npins=4)
$printorder
  [1]   6   5   4   3   2   1  12  11  10   9   8   7  18  17  16  15  14  13  24  23  22  21  20  19  30  29  28  27
 [29]  26  25  36  35  34  33  32  31  42  41  40  39  38  37  48  47  46  45  44  43   6   5   4   3   2   1  12  11
 [57]  10   9   8   7  18  17  16  15  14  13  24  23  22  21  20  19  30  29  28  27  26  25  36  35  34  33  32  31
 [85]  42  41  40  39  38  37  48  47  46  45  44  43   6   5   4   3   2   1  12  11  10   9   8   7  18  17  16  15
[113]  14  13  24  23  22  21  20  19  30  29  28  27  26  25  36  35  34  33  32  31  42  41  40  39  38  37  48  47
[141]  46  45  44  43   6   5   4   3   2   1  12  11  10   9   8   7  18  17  16  15  14  13  24  23  22  21  20  19
[169]  30  29  28  27  26  25  36  35  34  33  32  31  42  41  40  39  38  37  48  47  46  45  44  43  54  53  52  51
[197]  50  49  60  59  58  57  56  55  66  65  64  63  62  61  72  71  70  69  68  67  78  77  76  75  74  73  84  83
[225]  82  81  80  79  90  89  88  87  86  85  96  95  94  93  92  91  54  53  52  51  50  49  60  59  58  57  56  55
[253]  66  65  64  63  62  61  72  71  70  69  68  67  78  77  76  75  74  73  84  83  82  81  80  79  90  89  88  87
[281]  86  85  96  95  94  93  92  91  54  53  52  51  50  49  60  59  58  57  56  55  66  65  64  63  62  61  72  71
[309]  70  69  68  67  78  77  76  75  74  73  84  83  82  81  80  79  90  89  88  87  86  85  96  95  94  93  92  91
[337]  54  53  52  51  50  49  60  59  58  57  56  55  66  65  64  63  62  61  72  71  70  69  68  67  78  77  76  75
[365]  74  73  84  83  82  81  80  79  90  89  88  87  86  85  96  95  94  93  92  91 102 101 100  99  98  97 108 107
[393] 106 105 104 103 114 113 112 111 110 109 120 119 118 117 116 115 126 125 124 123 122 121 132 131 130 129 128 127
[421] 138 137 136 135 134 133 144 143 142 141 140 139 102 101 100  99  98  97 108 107 106 105 104 103 114 113 112 111
[449] 110 109 120 119 118 117 116 115 126 125 124 123 122 121 132 131 130 129 128 127 138 137 136 135 134 133 144 143
[477] 142 141 140 139 102 101 100  99  98  97 108 107 106 105 104 103 114 113 112 111 110 109 120 119 118 117 116 115
[505] 126 125 124 123 122 121 132 131 130 129 128 127 138 137 136 135 134 133 144 143 142 141 140 139 102 101 100  99
[533]  98  97 108 107 106 105 104 103 114 113 112 111 110 109 120 119 118 117 116 115 126 125 124 123 122 121 132 131
[561] 130 129 128 127 138 137 136 135 134 133 144 143 142 141 140 139 150 149 148 147 146 145 156 155 154 153 152 151
[589] 162 161 160 159 158 157 168 167 166 165 164 163 174 173 172 171 170 169 180 179 178 177 176 175 186 185 184 183
[617] 182 181 192 191 190 189 188 187 150 149 148 147 146 145 156 155 154 153 152 151 162 161 160 159 158 157 168 167
[645] 166 165 164 163 174 173 172 171 170 169 180 179 178 177 176 175 186 185 184 183 182 181 192 191 190 189 188 187
[673] 150 149 148 147 146 145 156 155 154 153 152 151 162 161 160 159 158 157 168 167 166 165 164 163 174 173 172 171
[701] 170 169 180 179 178 177 176 175 186 185 184 183 182 181 192 191 190 189 188 187 150 149 148 147 146 145 156 155
[729] 154 153 152 151 162 161 160 159 158 157 168 167 166 165 164 163 174 173 172 171 170 169 180 179 178 177 176 175
[757] 186 185 184 183 182 181 192 191 190 189 188 187

$plate
  [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 [58] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[115] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[172] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[229] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[286] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[343] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[400] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[457] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[514] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[571] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[628] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[685] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[742] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

$plate.r
  [1]  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4  4
 [39]  4  4  4  4  4  4  4  4  4  4  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3
 [77]  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2
[115]  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  2  1  1  1  1  1  1  1  1
[153]  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1
[191]  1  1  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8  8
[229]  8  8  8  8  8  8  8  8  8  8  8  8  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7
[267]  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  7  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6
[305]  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  6  5  5  5  5  5  5
[343]  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5  5
[381]  5  5  5  5 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
[419] 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
[457] 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10
[495] 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10  9  9  9  9
[533]  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9  9
[571]  9  9  9  9  9  9 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16
[609] 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15
[647] 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14
[685] 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13
[723] 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13
[761] 13 13 13 13 13 13 13 13

$plate.c
  [1]  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21
 [39] 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14
 [77] 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7
[115] 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6
[153]  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23
[191] 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16
[229] 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15
[267] 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8
[305]  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1
[343]  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24
[381] 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17
[419] 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10
[457] 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9
[495]  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2
[533]  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19
[571] 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18
[609] 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11
[647] 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3  2  2  1  1  6  6  5  5  4  4
[685]  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20 19 19 24 24 23 23 22 22  3  3
[723]  2  2  1  1  6  6  5  5  4  4  9  9  8  8  7  7 12 12 11 11 10 10 15 15 14 14 13 13 18 18 17 17 16 16 21 21 20 20
[761] 19 19 24 24 23 23 22 22

$plateposition
  [1] "p1D03" "p1D03" "p1D02" "p1D02" "p1D01" "p1D01" "p1D06" "p1D06" "p1D05" "p1D05" "p1D04" "p1D04" "p1D09" "p1D09"
 [15] "p1D08" "p1D08" "p1D07" "p1D07" "p1D12" "p1D12" "p1D11" "p1D11" "p1D10" "p1D10" "p1D15" "p1D15" "p1D14" "p1D14"
 [29] "p1D13" "p1D13" "p1D18" "p1D18" "p1D17" "p1D17" "p1D16" "p1D16" "p1D21" "p1D21" "p1D20" "p1D20" "p1D19" "p1D19"
 [43] "p1D24" "p1D24" "p1D23" "p1D23" "p1D22" "p1D22" "p1C03" "p1C03" "p1C02" "p1C02" "p1C01" "p1C01" "p1C06" "p1C06"
 [57] "p1C05" "p1C05" "p1C04" "p1C04" "p1C09" "p1C09" "p1C08" "p1C08" "p1C07" "p1C07" "p1C12" "p1C12" "p1C11" "p1C11"
 [71] "p1C10" "p1C10" "p1C15" "p1C15" "p1C14" "p1C14" "p1C13" "p1C13" "p1C18" "p1C18" "p1C17" "p1C17" "p1C16" "p1C16"
 [85] "p1C21" "p1C21" "p1C20" "p1C20" "p1C19" "p1C19" "p1C24" "p1C24" "p1C23" "p1C23" "p1C22" "p1C22" "p1B03" "p1B03"
 [99] "p1B02" "p1B02" "p1B01" "p1B01" "p1B06" "p1B06" "p1B05" "p1B05" "p1B04" "p1B04" "p1B09" "p1B09" "p1B08" "p1B08"
[113] "p1B07" "p1B07" "p1B12" "p1B12" "p1B11" "p1B11" "p1B10" "p1B10" "p1B15" "p1B15" "p1B14" "p1B14" "p1B13" "p1B13"
[127] "p1B18" "p1B18" "p1B17" "p1B17" "p1B16" "p1B16" "p1B21" "p1B21" "p1B20" "p1B20" "p1B19" "p1B19" "p1B24" "p1B24"
[141] "p1B23" "p1B23" "p1B22" "p1B22" "p1A03" "p1A03" "p1A02" "p1A02" "p1A01" "p1A01" "p1A06" "p1A06" "p1A05" "p1A05"
[155] "p1A04" "p1A04" "p1A09" "p1A09" "p1A08" "p1A08" "p1A07" "p1A07" "p1A12" "p1A12" "p1A11" "p1A11" "p1A10" "p1A10"
[169] "p1A15" "p1A15" "p1A14" "p1A14" "p1A13" "p1A13" "p1A18" "p1A18" "p1A17" "p1A17" "p1A16" "p1A16" "p1A21" "p1A21"
[183] "p1A20" "p1A20" "p1A19" "p1A19" "p1A24" "p1A24" "p1A23" "p1A23" "p1A22" "p1A22" "p1H03" "p1H03" "p1H02" "p1H02"
[197] "p1H01" "p1H01" "p1H06" "p1H06" "p1H05" "p1H05" "p1H04" "p1H04" "p1H09" "p1H09" "p1H08" "p1H08" "p1H07" "p1H07"
[211] "p1H12" "p1H12" "p1H11" "p1H11" "p1H10" "p1H10" "p1H15" "p1H15" "p1H14" "p1H14" "p1H13" "p1H13" "p1H18" "p1H18"
[225] "p1H17" "p1H17" "p1H16" "p1H16" "p1H21" "p1H21" "p1H20" "p1H20" "p1H19" "p1H19" "p1H24" "p1H24" "p1H23" "p1H23"
[239] "p1H22" "p1H22" "p1G03" "p1G03" "p1G02" "p1G02" "p1G01" "p1G01" "p1G06" "p1G06" "p1G05" "p1G05" "p1G04" "p1G04"
[253] "p1G09" "p1G09" "p1G08" "p1G08" "p1G07" "p1G07" "p1G12" "p1G12" "p1G11" "p1G11" "p1G10" "p1G10" "p1G15" "p1G15"
[267] "p1G14" "p1G14" "p1G13" "p1G13" "p1G18" "p1G18" "p1G17" "p1G17" "p1G16" "p1G16" "p1G21" "p1G21" "p1G20" "p1G20"
[281] "p1G19" "p1G19" "p1G24" "p1G24" "p1G23" "p1G23" "p1G22" "p1G22" "p1F03" "p1F03" "p1F02" "p1F02" "p1F01" "p1F01"
[295] "p1F06" "p1F06" "p1F05" "p1F05" "p1F04" "p1F04" "p1F09" "p1F09" "p1F08" "p1F08" "p1F07" "p1F07" "p1F12" "p1F12"
[309] "p1F11" "p1F11" "p1F10" "p1F10" "p1F15" "p1F15" "p1F14" "p1F14" "p1F13" "p1F13" "p1F18" "p1F18" "p1F17" "p1F17"
[323] "p1F16" "p1F16" "p1F21" "p1F21" "p1F20" "p1F20" "p1F19" "p1F19" "p1F24" "p1F24" "p1F23" "p1F23" "p1F22" "p1F22"
[337] "p1E03" "p1E03" "p1E02" "p1E02" "p1E01" "p1E01" "p1E06" "p1E06" "p1E05" "p1E05" "p1E04" "p1E04" "p1E09" "p1E09"
[351] "p1E08" "p1E08" "p1E07" "p1E07" "p1E12" "p1E12" "p1E11" "p1E11" "p1E10" "p1E10" "p1E15" "p1E15" "p1E14" "p1E14"
[365] "p1E13" "p1E13" "p1E18" "p1E18" "p1E17" "p1E17" "p1E16" "p1E16" "p1E21" "p1E21" "p1E20" "p1E20" "p1E19" "p1E19"
[379] "p1E24" "p1E24" "p1E23" "p1E23" "p1E22" "p1E22" "p1L03" "p1L03" "p1L02" "p1L02" "p1L01" "p1L01" "p1L06" "p1L06"
[393] "p1L05" "p1L05" "p1L04" "p1L04" "p1L09" "p1L09" "p1L08" "p1L08" "p1L07" "p1L07" "p1L12" "p1L12" "p1L11" "p1L11"
[407] "p1L10" "p1L10" "p1L15" "p1L15" "p1L14" "p1L14" "p1L13" "p1L13" "p1L18" "p1L18" "p1L17" "p1L17" "p1L16" "p1L16"
[421] "p1L21" "p1L21" "p1L20" "p1L20" "p1L19" "p1L19" "p1L24" "p1L24" "p1L23" "p1L23" "p1L22" "p1L22" "p1K03" "p1K03"
[435] "p1K02" "p1K02" "p1K01" "p1K01" "p1K06" "p1K06" "p1K05" "p1K05" "p1K04" "p1K04" "p1K09" "p1K09" "p1K08" "p1K08"
[449] "p1K07" "p1K07" "p1K12" "p1K12" "p1K11" "p1K11" "p1K10" "p1K10" "p1K15" "p1K15" "p1K14" "p1K14" "p1K13" "p1K13"
[463] "p1K18" "p1K18" "p1K17" "p1K17" "p1K16" "p1K16" "p1K21" "p1K21" "p1K20" "p1K20" "p1K19" "p1K19" "p1K24" "p1K24"
[477] "p1K23" "p1K23" "p1K22" "p1K22" "p1J03" "p1J03" "p1J02" "p1J02" "p1J01" "p1J01" "p1J06" "p1J06" "p1J05" "p1J05"
[491] "p1J04" "p1J04" "p1J09" "p1J09" "p1J08" "p1J08" "p1J07" "p1J07" "p1J12" "p1J12" "p1J11" "p1J11" "p1J10" "p1J10"
[505] "p1J15" "p1J15" "p1J14" "p1J14" "p1J13" "p1J13" "p1J18" "p1J18" "p1J17" "p1J17" "p1J16" "p1J16" "p1J21" "p1J21"
[519] "p1J20" "p1J20" "p1J19" "p1J19" "p1J24" "p1J24" "p1J23" "p1J23" "p1J22" "p1J22" "p1I03" "p1I03" "p1I02" "p1I02"
[533] "p1I01" "p1I01" "p1I06" "p1I06" "p1I05" "p1I05" "p1I04" "p1I04" "p1I09" "p1I09" "p1I08" "p1I08" "p1I07" "p1I07"
[547] "p1I12" "p1I12" "p1I11" "p1I11" "p1I10" "p1I10" "p1I15" "p1I15" "p1I14" "p1I14" "p1I13" "p1I13" "p1I18" "p1I18"
[561] "p1I17" "p1I17" "p1I16" "p1I16" "p1I21" "p1I21" "p1I20" "p1I20" "p1I19" "p1I19" "p1I24" "p1I24" "p1I23" "p1I23"
[575] "p1I22" "p1I22" "p1P03" "p1P03" "p1P02" "p1P02" "p1P01" "p1P01" "p1P06" "p1P06" "p1P05" "p1P05" "p1P04" "p1P04"
[589] "p1P09" "p1P09" "p1P08" "p1P08" "p1P07" "p1P07" "p1P12" "p1P12" "p1P11" "p1P11" "p1P10" "p1P10" "p1P15" "p1P15"
[603] "p1P14" "p1P14" "p1P13" "p1P13" "p1P18" "p1P18" "p1P17" "p1P17" "p1P16" "p1P16" "p1P21" "p1P21" "p1P20" "p1P20"
[617] "p1P19" "p1P19" "p1P24" "p1P24" "p1P23" "p1P23" "p1P22" "p1P22" "p1O03" "p1O03" "p1O02" "p1O02" "p1O01" "p1O01"
[631] "p1O06" "p1O06" "p1O05" "p1O05" "p1O04" "p1O04" "p1O09" "p1O09" "p1O08" "p1O08" "p1O07" "p1O07" "p1O12" "p1O12"
[645] "p1O11" "p1O11" "p1O10" "p1O10" "p1O15" "p1O15" "p1O14" "p1O14" "p1O13" "p1O13" "p1O18" "p1O18" "p1O17" "p1O17"
[659] "p1O16" "p1O16" "p1O21" "p1O21" "p1O20" "p1O20" "p1O19" "p1O19" "p1O24" "p1O24" "p1O23" "p1O23" "p1O22" "p1O22"
[673] "p1N03" "p1N03" "p1N02" "p1N02" "p1N01" "p1N01" "p1N06" "p1N06" "p1N05" "p1N05" "p1N04" "p1N04" "p1N09" "p1N09"
[687] "p1N08" "p1N08" "p1N07" "p1N07" "p1N12" "p1N12" "p1N11" "p1N11" "p1N10" "p1N10" "p1N15" "p1N15" "p1N14" "p1N14"
[701] "p1N13" "p1N13" "p1N18" "p1N18" "p1N17" "p1N17" "p1N16" "p1N16" "p1N21" "p1N21" "p1N20" "p1N20" "p1N19" "p1N19"
[715] "p1N24" "p1N24" "p1N23" "p1N23" "p1N22" "p1N22" "p1M03" "p1M03" "p1M02" "p1M02" "p1M01" "p1M01" "p1M06" "p1M06"
[729] "p1M05" "p1M05" "p1M04" "p1M04" "p1M09" "p1M09" "p1M08" "p1M08" "p1M07" "p1M07" "p1M12" "p1M12" "p1M11" "p1M11"
[743] "p1M10" "p1M10" "p1M15" "p1M15" "p1M14" "p1M14" "p1M13" "p1M13" "p1M18" "p1M18" "p1M17" "p1M17" "p1M16" "p1M16"
[757] "p1M21" "p1M21" "p1M20" "p1M20" "p1M19" "p1M19" "p1M24" "p1M24" "p1M23" "p1M23" "p1M22" "p1M22"

> printorder(list(ngrid.r=4,ngrid.c=4,nspot.r=8,nspot.c=6))
$printorder
  [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
 [39] 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
 [77] 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18
[115] 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8
[153]  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
[191] 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
[229] 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
[267] 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16
[305] 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6
[343]  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
[381] 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
[419] 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
[457] 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14
[495] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4
[533]  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
[571] 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
[609] 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22
[647] 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2  3  4  5  6  7  8  9 10 11 12
[685] 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  1  2
[723]  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
[761] 41 42 43 44 45 46 47 48

$plate
  [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1
 [58] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[115] 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2
[172] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2
[229] 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[286] 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1
[343] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[400] 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[457] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2
[514] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[571] 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1
[628] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1
[685] 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[742] 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

$plate.r
  [1]  4  4  4  4  4  4  8  8  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  4  4  4  4  4  4  8  8  8  8  8  8 12 12
 [39] 12 12 12 12 16 16 16 16 16 16  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  3  3  3  3
 [77]  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10
[115] 14 14 14 14 14 14  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10 14 14 14 14 14 14  1  1  1  1  1  1  5  5
[153]  5  5  5  5  9  9  9  9  9  9 13 13 13 13 13 13  1  1  1  1  1  1  5  5  5  5  5  5  9  9  9  9  9  9 13 13 13 13
[191] 13 13  4  4  4  4  4  4  8  8  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  4  4  4  4  4  4  8  8  8  8  8  8
[229] 12 12 12 12 12 12 16 16 16 16 16 16  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  3  3
[267]  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10
[305] 10 10 14 14 14 14 14 14  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10 14 14 14 14 14 14  1  1  1  1  1  1
[343]  5  5  5  5  5  5  9  9  9  9  9  9 13 13 13 13 13 13  1  1  1  1  1  1  5  5  5  5  5  5  9  9  9  9  9  9 13 13
[381] 13 13 13 13  4  4  4  4  4  4  8  8  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  4  4  4  4  4  4  8  8  8  8
[419]  8  8 12 12 12 12 12 12 16 16 16 16 16 16  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15
[457]  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  2  2  2  2  2  2  6  6  6  6  6  6 10 10
[495] 10 10 10 10 14 14 14 14 14 14  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10 14 14 14 14 14 14  1  1  1  1
[533]  1  1  5  5  5  5  5  5  9  9  9  9  9  9 13 13 13 13 13 13  1  1  1  1  1  1  5  5  5  5  5  5  9  9  9  9  9  9
[571] 13 13 13 13 13 13  4  4  4  4  4  4  8  8  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  4  4  4  4  4  4  8  8
[609]  8  8  8  8 12 12 12 12 12 12 16 16 16 16 16 16  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15
[647] 15 15  3  3  3  3  3  3  7  7  7  7  7  7 11 11 11 11 11 11 15 15 15 15 15 15  2  2  2  2  2  2  6  6  6  6  6  6
[685] 10 10 10 10 10 10 14 14 14 14 14 14  2  2  2  2  2  2  6  6  6  6  6  6 10 10 10 10 10 10 14 14 14 14 14 14  1  1
[723]  1  1  1  1  5  5  5  5  5  5  9  9  9  9  9  9 13 13 13 13 13 13  1  1  1  1  1  1  5  5  5  5  5  5  9  9  9  9
[761]  9  9 13 13 13 13 13 13

$plate.c
  [1]  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5
 [39]  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13
 [77] 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21
[115]  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5
[153]  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13 17 21  1  5  9 13
[191] 17 21  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22
[229]  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6
[267] 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14
[305] 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22
[343]  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6 10 14 18 22  2  6
[381] 10 14 18 22  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15
[419] 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23
[457]  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7
[495] 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15
[533] 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23  3  7 11 15 19 23
[571]  3  7 11 15 19 23  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8
[609] 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16
[647] 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24
[685]  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8
[723] 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16 20 24  4  8 12 16
[761] 20 24  4  8 12 16 20 24

$plateposition
  [1] "p1D01" "p1D05" "p1D09" "p1D13" "p1D17" "p1D21" "p1H01" "p1H05" "p1H09" "p1H13" "p1H17" "p1H21" "p1L01" "p1L05"
 [15] "p1L09" "p1L13" "p1L17" "p1L21" "p1P01" "p1P05" "p1P09" "p1P13" "p1P17" "p1P21" "p2D01" "p2D05" "p2D09" "p2D13"
 [29] "p2D17" "p2D21" "p2H01" "p2H05" "p2H09" "p2H13" "p2H17" "p2H21" "p2L01" "p2L05" "p2L09" "p2L13" "p2L17" "p2L21"
 [43] "p2P01" "p2P05" "p2P09" "p2P13" "p2P17" "p2P21" "p1C01" "p1C05" "p1C09" "p1C13" "p1C17" "p1C21" "p1G01" "p1G05"
 [57] "p1G09" "p1G13" "p1G17" "p1G21" "p1K01" "p1K05" "p1K09" "p1K13" "p1K17" "p1K21" "p1O01" "p1O05" "p1O09" "p1O13"
 [71] "p1O17" "p1O21" "p2C01" "p2C05" "p2C09" "p2C13" "p2C17" "p2C21" "p2G01" "p2G05" "p2G09" "p2G13" "p2G17" "p2G21"
 [85] "p2K01" "p2K05" "p2K09" "p2K13" "p2K17" "p2K21" "p2O01" "p2O05" "p2O09" "p2O13" "p2O17" "p2O21" "p1B01" "p1B05"
 [99] "p1B09" "p1B13" "p1B17" "p1B21" "p1F01" "p1F05" "p1F09" "p1F13" "p1F17" "p1F21" "p1J01" "p1J05" "p1J09" "p1J13"
[113] "p1J17" "p1J21" "p1N01" "p1N05" "p1N09" "p1N13" "p1N17" "p1N21" "p2B01" "p2B05" "p2B09" "p2B13" "p2B17" "p2B21"
[127] "p2F01" "p2F05" "p2F09" "p2F13" "p2F17" "p2F21" "p2J01" "p2J05" "p2J09" "p2J13" "p2J17" "p2J21" "p2N01" "p2N05"
[141] "p2N09" "p2N13" "p2N17" "p2N21" "p1A01" "p1A05" "p1A09" "p1A13" "p1A17" "p1A21" "p1E01" "p1E05" "p1E09" "p1E13"
[155] "p1E17" "p1E21" "p1I01" "p1I05" "p1I09" "p1I13" "p1I17" "p1I21" "p1M01" "p1M05" "p1M09" "p1M13" "p1M17" "p1M21"
[169] "p2A01" "p2A05" "p2A09" "p2A13" "p2A17" "p2A21" "p2E01" "p2E05" "p2E09" "p2E13" "p2E17" "p2E21" "p2I01" "p2I05"
[183] "p2I09" "p2I13" "p2I17" "p2I21" "p2M01" "p2M05" "p2M09" "p2M13" "p2M17" "p2M21" "p1D02" "p1D06" "p1D10" "p1D14"
[197] "p1D18" "p1D22" "p1H02" "p1H06" "p1H10" "p1H14" "p1H18" "p1H22" "p1L02" "p1L06" "p1L10" "p1L14" "p1L18" "p1L22"
[211] "p1P02" "p1P06" "p1P10" "p1P14" "p1P18" "p1P22" "p2D02" "p2D06" "p2D10" "p2D14" "p2D18" "p2D22" "p2H02" "p2H06"
[225] "p2H10" "p2H14" "p2H18" "p2H22" "p2L02" "p2L06" "p2L10" "p2L14" "p2L18" "p2L22" "p2P02" "p2P06" "p2P10" "p2P14"
[239] "p2P18" "p2P22" "p1C02" "p1C06" "p1C10" "p1C14" "p1C18" "p1C22" "p1G02" "p1G06" "p1G10" "p1G14" "p1G18" "p1G22"
[253] "p1K02" "p1K06" "p1K10" "p1K14" "p1K18" "p1K22" "p1O02" "p1O06" "p1O10" "p1O14" "p1O18" "p1O22" "p2C02" "p2C06"
[267] "p2C10" "p2C14" "p2C18" "p2C22" "p2G02" "p2G06" "p2G10" "p2G14" "p2G18" "p2G22" "p2K02" "p2K06" "p2K10" "p2K14"
[281] "p2K18" "p2K22" "p2O02" "p2O06" "p2O10" "p2O14" "p2O18" "p2O22" "p1B02" "p1B06" "p1B10" "p1B14" "p1B18" "p1B22"
[295] "p1F02" "p1F06" "p1F10" "p1F14" "p1F18" "p1F22" "p1J02" "p1J06" "p1J10" "p1J14" "p1J18" "p1J22" "p1N02" "p1N06"
[309] "p1N10" "p1N14" "p1N18" "p1N22" "p2B02" "p2B06" "p2B10" "p2B14" "p2B18" "p2B22" "p2F02" "p2F06" "p2F10" "p2F14"
[323] "p2F18" "p2F22" "p2J02" "p2J06" "p2J10" "p2J14" "p2J18" "p2J22" "p2N02" "p2N06" "p2N10" "p2N14" "p2N18" "p2N22"
[337] "p1A02" "p1A06" "p1A10" "p1A14" "p1A18" "p1A22" "p1E02" "p1E06" "p1E10" "p1E14" "p1E18" "p1E22" "p1I02" "p1I06"
[351] "p1I10" "p1I14" "p1I18" "p1I22" "p1M02" "p1M06" "p1M10" "p1M14" "p1M18" "p1M22" "p2A02" "p2A06" "p2A10" "p2A14"
[365] "p2A18" "p2A22" "p2E02" "p2E06" "p2E10" "p2E14" "p2E18" "p2E22" "p2I02" "p2I06" "p2I10" "p2I14" "p2I18" "p2I22"
[379] "p2M02" "p2M06" "p2M10" "p2M14" "p2M18" "p2M22" "p1D03" "p1D07" "p1D11" "p1D15" "p1D19" "p1D23" "p1H03" "p1H07"
[393] "p1H11" "p1H15" "p1H19" "p1H23" "p1L03" "p1L07" "p1L11" "p1L15" "p1L19" "p1L23" "p1P03" "p1P07" "p1P11" "p1P15"
[407] "p1P19" "p1P23" "p2D03" "p2D07" "p2D11" "p2D15" "p2D19" "p2D23" "p2H03" "p2H07" "p2H11" "p2H15" "p2H19" "p2H23"
[421] "p2L03" "p2L07" "p2L11" "p2L15" "p2L19" "p2L23" "p2P03" "p2P07" "p2P11" "p2P15" "p2P19" "p2P23" "p1C03" "p1C07"
[435] "p1C11" "p1C15" "p1C19" "p1C23" "p1G03" "p1G07" "p1G11" "p1G15" "p1G19" "p1G23" "p1K03" "p1K07" "p1K11" "p1K15"
[449] "p1K19" "p1K23" "p1O03" "p1O07" "p1O11" "p1O15" "p1O19" "p1O23" "p2C03" "p2C07" "p2C11" "p2C15" "p2C19" "p2C23"
[463] "p2G03" "p2G07" "p2G11" "p2G15" "p2G19" "p2G23" "p2K03" "p2K07" "p2K11" "p2K15" "p2K19" "p2K23" "p2O03" "p2O07"
[477] "p2O11" "p2O15" "p2O19" "p2O23" "p1B03" "p1B07" "p1B11" "p1B15" "p1B19" "p1B23" "p1F03" "p1F07" "p1F11" "p1F15"
[491] "p1F19" "p1F23" "p1J03" "p1J07" "p1J11" "p1J15" "p1J19" "p1J23" "p1N03" "p1N07" "p1N11" "p1N15" "p1N19" "p1N23"
[505] "p2B03" "p2B07" "p2B11" "p2B15" "p2B19" "p2B23" "p2F03" "p2F07" "p2F11" "p2F15" "p2F19" "p2F23" "p2J03" "p2J07"
[519] "p2J11" "p2J15" "p2J19" "p2J23" "p2N03" "p2N07" "p2N11" "p2N15" "p2N19" "p2N23" "p1A03" "p1A07" "p1A11" "p1A15"
[533] "p1A19" "p1A23" "p1E03" "p1E07" "p1E11" "p1E15" "p1E19" "p1E23" "p1I03" "p1I07" "p1I11" "p1I15" "p1I19" "p1I23"
[547] "p1M03" "p1M07" "p1M11" "p1M15" "p1M19" "p1M23" "p2A03" "p2A07" "p2A11" "p2A15" "p2A19" "p2A23" "p2E03" "p2E07"
[561] "p2E11" "p2E15" "p2E19" "p2E23" "p2I03" "p2I07" "p2I11" "p2I15" "p2I19" "p2I23" "p2M03" "p2M07" "p2M11" "p2M15"
[575] "p2M19" "p2M23" "p1D04" "p1D08" "p1D12" "p1D16" "p1D20" "p1D24" "p1H04" "p1H08" "p1H12" "p1H16" "p1H20" "p1H24"
[589] "p1L04" "p1L08" "p1L12" "p1L16" "p1L20" "p1L24" "p1P04" "p1P08" "p1P12" "p1P16" "p1P20" "p1P24" "p2D04" "p2D08"
[603] "p2D12" "p2D16" "p2D20" "p2D24" "p2H04" "p2H08" "p2H12" "p2H16" "p2H20" "p2H24" "p2L04" "p2L08" "p2L12" "p2L16"
[617] "p2L20" "p2L24" "p2P04" "p2P08" "p2P12" "p2P16" "p2P20" "p2P24" "p1C04" "p1C08" "p1C12" "p1C16" "p1C20" "p1C24"
[631] "p1G04" "p1G08" "p1G12" "p1G16" "p1G20" "p1G24" "p1K04" "p1K08" "p1K12" "p1K16" "p1K20" "p1K24" "p1O04" "p1O08"
[645] "p1O12" "p1O16" "p1O20" "p1O24" "p2C04" "p2C08" "p2C12" "p2C16" "p2C20" "p2C24" "p2G04" "p2G08" "p2G12" "p2G16"
[659] "p2G20" "p2G24" "p2K04" "p2K08" "p2K12" "p2K16" "p2K20" "p2K24" "p2O04" "p2O08" "p2O12" "p2O16" "p2O20" "p2O24"
[673] "p1B04" "p1B08" "p1B12" "p1B16" "p1B20" "p1B24" "p1F04" "p1F08" "p1F12" "p1F16" "p1F20" "p1F24" "p1J04" "p1J08"
[687] "p1J12" "p1J16" "p1J20" "p1J24" "p1N04" "p1N08" "p1N12" "p1N16" "p1N20" "p1N24" "p2B04" "p2B08" "p2B12" "p2B16"
[701] "p2B20" "p2B24" "p2F04" "p2F08" "p2F12" "p2F16" "p2F20" "p2F24" "p2J04" "p2J08" "p2J12" "p2J16" "p2J20" "p2J24"
[715] "p2N04" "p2N08" "p2N12" "p2N16" "p2N20" "p2N24" "p1A04" "p1A08" "p1A12" "p1A16" "p1A20" "p1A24" "p1E04" "p1E08"
[729] "p1E12" "p1E16" "p1E20" "p1E24" "p1I04" "p1I08" "p1I12" "p1I16" "p1I20" "p1I24" "p1M04" "p1M08" "p1M12" "p1M16"
[743] "p1M20" "p1M24" "p2A04" "p2A08" "p2A12" "p2A16" "p2A20" "p2A24" "p2E04" "p2E08" "p2E12" "p2E16" "p2E20" "p2E24"
[757] "p2I04" "p2I08" "p2I12" "p2I16" "p2I20" "p2I24" "p2M04" "p2M08" "p2M12" "p2M16" "p2M20" "p2M24"

> 
> ### merge.rglist
> 
> R <- G <- matrix(11:14,4,2)
> rownames(R) <- rownames(G) <- c("a","a","b","c")
> RG1 <- new("RGList",list(R=R,G=G))
> R <- G <- matrix(21:24,4,2)
> rownames(R) <- rownames(G) <- c("b","a","a","c")
> RG2 <- new("RGList",list(R=R,G=G))
> merge(RG1,RG2)
An object of class "RGList"
$R
  [,1] [,2] [,3] [,4]
a   11   11   22   22
a   12   12   23   23
b   13   13   21   21
c   14   14   24   24

$G
  [,1] [,2] [,3] [,4]
a   11   11   22   22
a   12   12   23   23
b   13   13   21   21
c   14   14   24   24

> merge(RG2,RG1)
An object of class "RGList"
$R
  [,1] [,2] [,3] [,4]
b   21   21   13   13
a   22   22   11   11
a   23   23   12   12
c   24   24   14   14

$G
  [,1] [,2] [,3] [,4]
b   21   21   13   13
a   22   22   11   11
a   23   23   12   12
c   24   24   14   14

> 
> ### background correction
> 
> RG <- new("RGList", list(R=c(1,2,3,4),G=c(1,2,3,4),Rb=c(2,2,2,2),Gb=c(2,2,2,2)))
> backgroundCorrect(RG)
An object of class "RGList"
$R
     [,1]
[1,]   -1
[2,]    0
[3,]    1
[4,]    2

$G
     [,1]
[1,]   -1
[2,]    0
[3,]    1
[4,]    2

> backgroundCorrect(RG, method="half")
An object of class "RGList"
$R
     [,1]
[1,]  0.5
[2,]  0.5
[3,]  1.0
[4,]  2.0

$G
     [,1]
[1,]  0.5
[2,]  0.5
[3,]  1.0
[4,]  2.0

> backgroundCorrect(RG, method="minimum")
An object of class "RGList"
$R
     [,1]
[1,]  0.5
[2,]  0.5
[3,]  1.0
[4,]  2.0

$G
     [,1]
[1,]  0.5
[2,]  0.5
[3,]  1.0
[4,]  2.0

> backgroundCorrect(RG, offset=5)
An object of class "RGList"
$R
     [,1]
[1,]    4
[2,]    5
[3,]    6
[4,]    7

$G
     [,1]
[1,]    4
[2,]    5
[3,]    6
[4,]    7

> 
> ### loessFit
> 
> x <- 1:100
> y <- rnorm(100)
> out <- loessFit(y,x)
> f1 <- quantile(out$fitted)
> r1 <- quantile(out$residuals)
> w <- rep(1,100)
> w[1:50] <- 0.5
> out <- loessFit(y,x,weights=w,method="weightedLowess")
> f2 <- quantile(out$fitted)
> r2 <- quantile(out$residuals)
> out <- loessFit(y,x,weights=w,method="locfit")
> f3 <- quantile(out$fitted)
> r3 <- quantile(out$residuals)
> out <- loessFit(y,x,weights=w,method="loess")
> f4 <- quantile(out$fitted)
> r4 <- quantile(out$residuals)
> w <- rep(1,100)
> w[2*(1:50)] <- 0
> out <- loessFit(y,x,weights=w,method="weightedLowess")
> f5 <- quantile(out$fitted)
> r5 <- quantile(out$residuals)
> data.frame(f1,f2,f3,f4,f5)
              f1           f2          f3          f4          f5
0%   -0.78835384 -0.687432210 -0.78957137 -0.76756060 -0.63778292
25%  -0.18340154 -0.179683572 -0.18979269 -0.16773223 -0.38064318
50%  -0.11492924 -0.114796040 -0.12087983 -0.07185314 -0.15971879
75%   0.01507921 -0.008145125 -0.01857508  0.04030634  0.07839396
100%  0.21653837  0.145106033  0.19214597  0.21417361  0.51836274
> data.frame(r1,r2,r3,r4,r5)
              r1          r2          r3           r4          r5
0%   -2.04434053 -2.05132680 -2.02404318 -2.101242874 -2.22280633
25%  -0.59321065 -0.57200209 -0.58975649 -0.577887481 -0.71037756
50%   0.05874864  0.04514326  0.08335198 -0.001769806  0.06785517
75%   0.56010750  0.55124530  0.57618740  0.561454370  0.65383830
100%  2.57936026  2.64549799  2.57549257  2.402324533  2.28648835
> 
> ### normalizeWithinArrays
> 
> RG <- new("RGList",list())
> RG$R <- matrix(rexp(100*2),100,2)
> RG$G <- matrix(rexp(100*2),100,2)
> RG$Rb <- matrix(rnorm(100*2,sd=0.02),100,2)
> RG$Gb <- matrix(rnorm(100*2,sd=0.02),100,2)
> RGb <- backgroundCorrect(RG,method="normexp",normexp.method="saddle")
Array 1 corrected
Array 2 corrected
Array 1 corrected
Array 2 corrected
> summary(cbind(RGb$R,RGb$G))
       V1                V2                V3               V4        
 Min.   :0.01626   Min.   :0.01213   Min.   :0.0000   Min.   :0.0000  
 1st Qu.:0.35497   1st Qu.:0.29133   1st Qu.:0.2745   1st Qu.:0.3953  
 Median :0.71793   Median :0.70294   Median :0.6339   Median :0.8223  
 Mean   :0.90184   Mean   :1.00122   Mean   :0.9454   Mean   :1.1324  
 3rd Qu.:1.16891   3rd Qu.:1.33139   3rd Qu.:1.4059   3rd Qu.:1.4221  
 Max.   :4.56267   Max.   :6.37947   Max.   :5.0486   Max.   :6.6295  
> RGb <- backgroundCorrect(RG,method="normexp",normexp.method="mle")
Array 1 corrected
Array 2 corrected
Array 1 corrected
Array 2 corrected
> summary(cbind(RGb$R,RGb$G))
       V1                V2                V3               V4        
 Min.   :0.01701   Min.   :0.01255   Min.   :0.0000   Min.   :0.0000  
 1st Qu.:0.35423   1st Qu.:0.29118   1st Qu.:0.2745   1st Qu.:0.3953  
 Median :0.71719   Median :0.70280   Median :0.6339   Median :0.8223  
 Mean   :0.90118   Mean   :1.00110   Mean   :0.9454   Mean   :1.1324  
 3rd Qu.:1.16817   3rd Qu.:1.33124   3rd Qu.:1.4059   3rd Qu.:1.4221  
 Max.   :4.56193   Max.   :6.37932   Max.   :5.0486   Max.   :6.6295  
> MA <- normalizeWithinArrays(RGb,method="loess")
> summary(MA$M)
       V1                V2          
 Min.   :-5.8801   Min.   :-5.66985  
 1st Qu.:-1.1850   1st Qu.:-1.57014  
 Median :-0.2164   Median : 0.04823  
 Mean   : 0.0349   Mean   :-0.05481  
 3rd Qu.: 1.4964   3rd Qu.: 1.45113  
 Max.   : 7.0751   Max.   : 6.19744  
> #MA <- normalizeWithinArrays(RG[,1:2], mouse.setup, method="robustspline")
> #MA$M[1:5,]
> #MA <- normalizeWithinArrays(mouse.data, mouse.setup)
> #MA$M[1:5,]
> 
> ### normalizeBetweenArrays
> 
> MA2 <- normalizeBetweenArrays(MA,method="scale")
> MA$M[1:5,]
           [,1]       [,2]
[1,] -1.1669590  4.5558123
[2,]  0.8969743  0.3296544
[3,]  2.8245754  1.4249960
[4,] -1.8532747  0.4804851
[5,]  1.9159023 -5.5087631
> MA$A[1:5,]
            [,1]       [,2]
[1,] -2.48465011 -2.4041550
[2,] -0.79230447 -0.9002250
[3,] -0.76237200  0.2071043
[4,]  0.09281027 -1.3880965
[5,]  0.22385828 -3.0855818
> MA2 <- normalizeBetweenArrays(MA,method="quantile")
> MA$M[1:5,]
           [,1]       [,2]
[1,] -1.1669590  4.5558123
[2,]  0.8969743  0.3296544
[3,]  2.8245754  1.4249960
[4,] -1.8532747  0.4804851
[5,]  1.9159023 -5.5087631
> MA$A[1:5,]
            [,1]       [,2]
[1,] -2.48465011 -2.4041550
[2,] -0.79230447 -0.9002250
[3,] -0.76237200  0.2071043
[4,]  0.09281027 -1.3880965
[5,]  0.22385828 -3.0855818
> 
> ### unwrapdups
> 
> M <- matrix(1:12,6,2)
> unwrapdups(M,ndups=1)
     [,1] [,2]
[1,]    1    7
[2,]    2    8
[3,]    3    9
[4,]    4   10
[5,]    5   11
[6,]    6   12
> unwrapdups(M,ndups=2)
     [,1] [,2] [,3] [,4]
[1,]    1    2    7    8
[2,]    3    4    9   10
[3,]    5    6   11   12
> unwrapdups(M,ndups=3)
     [,1] [,2] [,3] [,4] [,5] [,6]
[1,]    1    2    3    7    8    9
[2,]    4    5    6   10   11   12
> unwrapdups(M,ndups=2,spacing=3)
     [,1] [,2] [,3] [,4]
[1,]    1    4    7   10
[2,]    2    5    8   11
[3,]    3    6    9   12
> 
> ### trigammaInverse
> 
> trigammaInverse(c(1e-6,NA,5,1e6))
[1] 1.000000e+06           NA 4.961687e-01 1.000001e-03
> 
> ### lmFit, eBayes, topTable
> 
> M <- matrix(rnorm(10*6,sd=0.3),10,6)
> rownames(M) <- LETTERS[1:10]
> M[1,1:3] <- M[1,1:3] + 2
> design <- cbind(First3Arrays=c(1,1,1,0,0,0),Last3Arrays=c(0,0,0,1,1,1))
> contrast.matrix <- cbind(First3=c(1,0),Last3=c(0,1),"Last3-First3"=c(-1,1))
> fit <- lmFit(M,design)
> fit2 <- eBayes(contrasts.fit(fit,contrasts=contrast.matrix))
> topTable(fit2)
       First3       Last3 Last3.First3      AveExpr           F      P.Value    adj.P.Val
A  1.77602021  0.06025114  -1.71576906  0.918135675 50.91471061 7.727200e-23 7.727200e-22
D -0.05454069  0.39127869   0.44581938  0.168369004  2.51638838 8.075072e-02 3.758388e-01
F -0.16249607 -0.33009728  -0.16760121 -0.246296671  2.18256779 1.127516e-01 3.758388e-01
G  0.30852468 -0.06873462  -0.37725930  0.119895035  1.61088775 1.997102e-01 4.992756e-01
H -0.16942269  0.20578118   0.37520387  0.018179245  1.14554368 3.180510e-01 6.361019e-01
J  0.21417623  0.07074940  -0.14342683  0.142462814  0.82029274 4.403027e-01 7.338379e-01
C -0.12236781  0.15095948   0.27332729  0.014295836  0.60885003 5.439761e-01 7.382414e-01
B -0.11982833  0.13529287   0.25512120  0.007732271  0.52662792 5.905931e-01 7.382414e-01
E  0.01897934  0.10434934   0.08536999  0.061664340  0.18136849 8.341279e-01 9.268088e-01
I -0.04720963  0.03996397   0.08717360 -0.003622829  0.06168476 9.401792e-01 9.401792e-01
> topTable(fit2,coef=3,resort.by="logFC")
        logFC      AveExpr          t      P.Value    adj.P.Val         B
D  0.44581938  0.168369004  1.7901232 8.100587e-02 3.494414e-01 -5.323150
H  0.37520387  0.018179245  1.5065768 1.397766e-01 3.494414e-01 -5.785971
C  0.27332729  0.014295836  1.0975061 2.789833e-01 5.196681e-01 -6.313399
B  0.25512120  0.007732271  1.0244023 3.118009e-01 5.196681e-01 -6.390202
I  0.08717360 -0.003622829  0.3500330 7.281504e-01 7.335508e-01 -6.849117
E  0.08536999  0.061664340  0.3427908 7.335508e-01 7.335508e-01 -6.851601
J -0.14342683  0.142462814 -0.5759097 5.679026e-01 7.098782e-01 -6.745563
F -0.16760121 -0.246296671 -0.6729784 5.048308e-01 7.098782e-01 -6.685541
G -0.37725930  0.119895035 -1.5148301 1.376783e-01 3.494414e-01 -5.773625
A -1.71576906  0.918135675 -6.8894222 2.674199e-08 2.674199e-07 16.590631
> topTable(fit2,coef=3,resort.by="p")
        logFC      AveExpr          t      P.Value    adj.P.Val         B
A -1.71576906  0.918135675 -6.8894222 2.674199e-08 2.674199e-07 16.590631
D  0.44581938  0.168369004  1.7901232 8.100587e-02 3.494414e-01 -5.323150
G -0.37725930  0.119895035 -1.5148301 1.376783e-01 3.494414e-01 -5.773625
H  0.37520387  0.018179245  1.5065768 1.397766e-01 3.494414e-01 -5.785971
C  0.27332729  0.014295836  1.0975061 2.789833e-01 5.196681e-01 -6.313399
B  0.25512120  0.007732271  1.0244023 3.118009e-01 5.196681e-01 -6.390202
F -0.16760121 -0.246296671 -0.6729784 5.048308e-01 7.098782e-01 -6.685541
J -0.14342683  0.142462814 -0.5759097 5.679026e-01 7.098782e-01 -6.745563
I  0.08717360 -0.003622829  0.3500330 7.281504e-01 7.335508e-01 -6.849117
E  0.08536999  0.061664340  0.3427908 7.335508e-01 7.335508e-01 -6.851601
> topTable(fit2,coef=3,sort.by="logFC",resort.by="t")
        logFC      AveExpr          t      P.Value    adj.P.Val         B
D  0.44581938  0.168369004  1.7901232 8.100587e-02 3.494414e-01 -5.323150
H  0.37520387  0.018179245  1.5065768 1.397766e-01 3.494414e-01 -5.785971
C  0.27332729  0.014295836  1.0975061 2.789833e-01 5.196681e-01 -6.313399
B  0.25512120  0.007732271  1.0244023 3.118009e-01 5.196681e-01 -6.390202
I  0.08717360 -0.003622829  0.3500330 7.281504e-01 7.335508e-01 -6.849117
E  0.08536999  0.061664340  0.3427908 7.335508e-01 7.335508e-01 -6.851601
J -0.14342683  0.142462814 -0.5759097 5.679026e-01 7.098782e-01 -6.745563
F -0.16760121 -0.246296671 -0.6729784 5.048308e-01 7.098782e-01 -6.685541
G -0.37725930  0.119895035 -1.5148301 1.376783e-01 3.494414e-01 -5.773625
A -1.71576906  0.918135675 -6.8894222 2.674199e-08 2.674199e-07 16.590631
> topTable(fit2,coef=3,resort.by="B")
        logFC      AveExpr          t      P.Value    adj.P.Val         B
A -1.71576906  0.918135675 -6.8894222 2.674199e-08 2.674199e-07 16.590631
D  0.44581938  0.168369004  1.7901232 8.100587e-02 3.494414e-01 -5.323150
G -0.37725930  0.119895035 -1.5148301 1.376783e-01 3.494414e-01 -5.773625
H  0.37520387  0.018179245  1.5065768 1.397766e-01 3.494414e-01 -5.785971
C  0.27332729  0.014295836  1.0975061 2.789833e-01 5.196681e-01 -6.313399
B  0.25512120  0.007732271  1.0244023 3.118009e-01 5.196681e-01 -6.390202
F -0.16760121 -0.246296671 -0.6729784 5.048308e-01 7.098782e-01 -6.685541
J -0.14342683  0.142462814 -0.5759097 5.679026e-01 7.098782e-01 -6.745563
I  0.08717360 -0.003622829  0.3500330 7.281504e-01 7.335508e-01 -6.849117
E  0.08536999  0.061664340  0.3427908 7.335508e-01 7.335508e-01 -6.851601
> topTable(fit2,coef=3,lfc=1)
      logFC   AveExpr         t      P.Value    adj.P.Val        B
A -1.715769 0.9181357 -6.889422 2.674199e-08 2.674199e-07 16.59063
> topTable(fit2,coef=3,p.value=0.2)
      logFC   AveExpr         t      P.Value    adj.P.Val        B
A -1.715769 0.9181357 -6.889422 2.674199e-08 2.674199e-07 16.59063
> topTable(fit2,coef=3,p.value=0.2,lfc=0.5)
      logFC   AveExpr         t      P.Value    adj.P.Val        B
A -1.715769 0.9181357 -6.889422 2.674199e-08 2.674199e-07 16.59063
> topTable(fit2,coef=3,p.value=0.2,lfc=0.5,sort.by="none")
      logFC   AveExpr         t      P.Value    adj.P.Val        B
A -1.715769 0.9181357 -6.889422 2.674199e-08 2.674199e-07 16.59063
> contrasts.fit(fit[1:3,],contrast.matrix[,0])
An object of class "MArrayLM"
$coefficients
 
A
B
C

$rank
[1] 2

$assign
NULL

$qr
$qr
     First3Arrays Last3Arrays
[1,]   -1.7320508   0.0000000
[2,]    0.5773503  -1.7320508
[3,]    0.5773503   0.0000000
[4,]    0.0000000   0.5773503
[5,]    0.0000000   0.5773503
[6,]    0.0000000   0.5773503

$qraux
[1] 1.57735 1.00000

$pivot
[1] 1 2

$tol
[1] 1e-07

$rank
[1] 2


$df.residual
[1] 4 4 4

$sigma
        A         B         C 
0.3299787 0.3323336 0.2315815 

$cov.coefficients
<0 x 0 matrix>

$stdev.unscaled
 
A
B
C

$pivot
[1] 1 2

$Amean
          A           B           C 
0.918135675 0.007732271 0.014295836 

$method
[1] "ls"

$design
     First3Arrays Last3Arrays
[1,]            1           0
[2,]            1           0
[3,]            1           0
[4,]            0           1
[5,]            0           1
[6,]            0           1

$contrasts
    
[1,]
[2,]

> fit$coefficients[1,1] <- NA
> contrasts.fit(fit[1:3,],contrast.matrix)$coefficients
      First3      Last3 Last3-First3
A         NA 0.06025114           NA
B -0.1198283 0.13529287    0.2551212
C -0.1223678 0.15095948    0.2733273
> 
> designlist <- list(Null=matrix(1,6,1),Two=design,Three=cbind(1,c(0,0,1,1,0,0),c(0,0,0,0,1,1)))
> out <- selectModel(M,designlist)
> table(out$pref)

 Null   Two Three 
    5     3     2 
> 
> ### marray object
> 
> #suppressMessages(suppressWarnings(gotmarray <- require(marray,quietly=TRUE)))
> #if(gotmarray) {
> #	data(swirl)
> #	snorm = maNorm(swirl)
> #	fit <- lmFit(snorm, design = c(1,-1,-1,1))
> #	fit <- eBayes(fit)
> #	topTable(fit,resort.by="AveExpr")
> #}
> 
> ### duplicateCorrelation
> 
> cor.out <- duplicateCorrelation(M)
> cor.out$consensus.correlation
[1] -0.09290714
> cor.out$atanh.correlations
[1] -0.4419130  0.4088967 -0.1964978 -0.6093769  0.3730118
> 
> ### gls.series
> 
> fit <- gls.series(M,design,correlation=cor.out$cor)
> fit$coefficients
     First3Arrays Last3Arrays
[1,]   0.82809594  0.09777201
[2,]  -0.08845425  0.27111909
[3,]  -0.07175836 -0.11287397
[4,]   0.06955100  0.06852328
[5,]   0.08348330  0.05535668
> fit$stdev.unscaled
     First3Arrays Last3Arrays
[1,]    0.3888215   0.3888215
[2,]    0.3888215   0.3888215
[3,]    0.3888215   0.3888215
[4,]    0.3888215   0.3888215
[5,]    0.3888215   0.3888215
> fit$sigma
[1] 0.7630059 0.2152728 0.3350370 0.3227781 0.3405473
> fit$df.residual
[1] 10 10 10 10 10
> 
> ### mrlm
> 
> fit <- mrlm(M,design)
Warning message:
In rlm.default(x = X, y = y, weights = w, ...) :
  'rlm' failed to converge in 20 steps
> fit$coefficients
  First3Arrays Last3Arrays
A   1.75138894  0.06025114
B  -0.11982833  0.10322039
C  -0.09302502  0.15095948
D  -0.05454069  0.33700045
E   0.07927938  0.10434934
F  -0.16249607 -0.34010852
G   0.30852468 -0.06873462
H  -0.16942269  0.24392984
I  -0.04720963  0.03996397
J   0.21417623 -0.05679272
> fit$stdev.unscaled
  First3Arrays Last3Arrays
A    0.5933418   0.5773503
B    0.5773503   0.6096497
C    0.6017444   0.5773503
D    0.5773503   0.6266021
E    0.6307703   0.5773503
F    0.5773503   0.5846707
G    0.5773503   0.5773503
H    0.5773503   0.6544564
I    0.5773503   0.5773503
J    0.5773503   0.6689776
> fit$sigma
 [1] 0.2894294 0.2679396 0.2090236 0.1461395 0.2309018 0.2827476 0.2285945 0.2267556 0.3537469 0.2172409
> fit$df.residual
 [1] 4 4 4 4 4 4 4 4 4 4
> 
> # Similar to Mette Langaas 19 May 2004
> set.seed(123)
> narrays <- 9
> ngenes <- 5
> mu <- 0
> alpha <- 2
> beta <- -2
> epsilon <- matrix(rnorm(narrays*ngenes,0,1),ncol=narrays)
> X <- cbind(rep(1,9),c(0,0,0,1,1,1,0,0,0),c(0,0,0,0,0,0,1,1,1))
> dimnames(X) <- list(1:9,c("mu","alpha","beta"))
> yvec <- mu*X[,1]+alpha*X[,2]+beta*X[,3]
> ymat <- matrix(rep(yvec,ngenes),ncol=narrays,byrow=T)+epsilon
> ymat[5,1:2] <- NA
> fit <- lmFit(ymat,design=X)
> test.contr <- cbind(c(0,1,-1),c(1,1,0),c(1,0,1))
> dimnames(test.contr) <- list(c("mu","alpha","beta"),c("alpha-beta","mu+alpha","mu+beta"))
> fit2 <- contrasts.fit(fit,contrasts=test.contr)
> eBayes(fit2)
An object of class "MArrayLM"
$coefficients
     alpha-beta mu+alpha   mu+beta
[1,]   3.537333 1.677465 -1.859868
[2,]   4.355578 2.372554 -1.983024
[3,]   3.197645 1.053584 -2.144061
[4,]   2.697734 1.611443 -1.086291
[5,]   3.502304 2.051995 -1.450309

$stdev.unscaled
     alpha-beta  mu+alpha   mu+beta
[1,]  0.8164966 0.5773503 0.5773503
[2,]  0.8164966 0.5773503 0.5773503
[3,]  0.8164966 0.5773503 0.5773503
[4,]  0.8164966 0.5773503 0.5773503
[5,]  1.1547005 0.8368633 0.8368633

$sigma
[1] 1.3425032 0.4647155 1.1993444 0.9428569 0.9421509

$df.residual
[1] 6 6 6 6 4

$cov.coefficients
           alpha-beta     mu+alpha       mu+beta
alpha-beta  0.6666667 3.333333e-01 -3.333333e-01
mu+alpha    0.3333333 3.333333e-01  1.110223e-16
mu+beta    -0.3333333 1.110223e-16  3.333333e-01

$pivot
[1] 1 2 3

$rank
[1] 3

$Amean
[1]  0.2034961  0.1954604 -0.2863347  0.1188659  0.1784593

$method
[1] "ls"

$design
  mu alpha beta
1  1     0    0
2  1     0    0
3  1     0    0
4  1     1    0
5  1     1    0
6  1     1    0
7  1     0    1
8  1     0    1
9  1     0    1

$contrasts
      alpha-beta mu+alpha mu+beta
mu             0        1       1
alpha          1        1       0
beta          -1        0       1

$df.prior
[1] 9.306153

$s2.prior
[1] 0.923179

$var.prior
[1] 17.33142 17.33142 12.26855

$proportion
[1] 0.01

$s2.post
[1] 1.2677996 0.6459499 1.1251558 0.9097727 0.9124980

$t
     alpha-beta mu+alpha   mu+beta
[1,]   3.847656 2.580411 -2.860996
[2,]   6.637308 5.113018 -4.273553
[3,]   3.692066 1.720376 -3.500994
[4,]   3.464003 2.926234 -1.972606
[5,]   3.175181 2.566881 -1.814221

$df.total
[1] 15.30615 15.30615 15.30615 15.30615 13.30615

$p.value
       alpha-beta     mu+alpha      mu+beta
[1,] 1.529450e-03 0.0206493481 0.0117123495
[2,] 7.144893e-06 0.0001195844 0.0006385076
[3,] 2.109270e-03 0.1055117477 0.0031325769
[4,] 3.381970e-03 0.0102514264 0.0668844448
[5,] 7.124839e-03 0.0230888584 0.0922478630

$lods
     alpha-beta  mu+alpha    mu+beta
[1,]  -1.013417 -3.702133 -3.0332393
[2,]   3.981496  1.283349 -0.2615911
[3,]  -1.315036 -5.168621 -1.7864101
[4,]  -1.757103 -3.043209 -4.6191869
[5,]  -2.257358 -3.478267 -4.5683738

$F
[1]  7.421911 22.203107  7.608327  6.227010  5.060579

$F.p.value
[1] 5.581800e-03 2.988923e-05 5.080726e-03 1.050148e-02 2.320274e-02

> 
> ### uniquegenelist
> 
> uniquegenelist(letters[1:8],ndups=2)
[1] "a" "c" "e" "g"
> uniquegenelist(letters[1:8],ndups=2,spacing=2)
[1] "a" "b" "e" "f"
> 
> ### classifyTests
> 
> tstat <- matrix(c(0,5,0, 0,2.5,0, -2,-2,2, 1,1,1), 4, 3, byrow=TRUE)
> classifyTestsF(tstat)
TestResults matrix
     [,1] [,2] [,3]
[1,]    0    1    0
[2,]    0    0    0
[3,]   -1   -1    1
[4,]    0    0    0
> classifyTestsF(tstat,fstat.only=TRUE)
[1] 8.333333 2.083333 4.000000 1.000000
attr(,"df1")
[1] 3
attr(,"df2")
[1] Inf
> limma:::.classifyTestsP(tstat)
TestResults matrix
     [,1] [,2] [,3]
[1,]    0    1    0
[2,]    0    1    0
[3,]    0    0    0
[4,]    0    0    0
> 
> ### avereps
> 
> x <- matrix(rnorm(8*3),8,3)
> colnames(x) <- c("S1","S2","S3")
> rownames(x) <- c("b","a","a","c","c","b","b","b")
> avereps(x)
          S1         S2         S3
b -0.2353018  0.5220094  0.2302895
a -0.4347701  0.6453498 -0.6758914
c  0.3482980 -0.4820695 -0.3841313
> 
> ### roast
> 
> y <- matrix(rnorm(100*4),100,4)
> sigma <- sqrt(2/rchisq(100,df=7))
> y <- y*sigma
> design <- cbind(Intercept=1,Group=c(0,0,1,1))
> iset1 <- 1:5
> y[iset1,3:4] <- y[iset1,3:4]+3
> iset2 <- 6:10
> roast(y=y,iset1,design,contrast=2)
         Active.Prop     P.Value
Down               0 0.997999500
Up                 1 0.002250563
UpOrDown           1 0.004500000
Mixed              1 0.004500000
> roast(y=y,iset1,design,contrast=2,array.weights=c(0.5,1,0.5,1))
         Active.Prop     P.Value
Down               0 0.998749687
Up                 1 0.001500375
UpOrDown           1 0.003000000
Mixed              1 0.003000000
> w <- matrix(runif(100*4),100,4)
> roast(y=y,iset1,design,contrast=2,weights=w)
         Active.Prop     P.Value
Down               0 0.996999250
Up                 1 0.003250813
UpOrDown           1 0.006500000
Mixed              1 0.006500000
> mroast(y=y,list(set1=iset1,set2=iset2),design,contrast=2,gene.weights=runif(100))
     NGenes PropDown PropUp Direction PValue    FDR PValue.Mixed FDR.Mixed
set1      5        0      1        Up 0.0055 0.0105       0.0055    0.0105
set2      5        0      0        Up 0.2025 0.2025       0.4715    0.4715
> mroast(y=y,list(set1=iset1,set2=iset2),design,contrast=2,array.weights=c(0.5,1,0.5,1))
     NGenes PropDown PropUp Direction PValue    FDR PValue.Mixed FDR.Mixed
set1      5        0      1        Up 0.0050 0.0095        0.005    0.0095
set2      5        0      0        Up 0.6845 0.6845        0.642    0.6420
> mroast(y=y,list(set1=iset1,set2=iset2),design,contrast=2,weights=w)
     NGenes PropDown PropUp Direction PValue    FDR PValue.Mixed FDR.Mixed
set1      5        0    1.0        Up 0.0030 0.0055        0.003    0.0055
set2      5        0    0.2      Down 0.9615 0.9615        0.496    0.4960
> mroast(y=y,list(set1=iset1,set2=iset2),design,contrast=2,weights=w,array.weights=c(0.5,1,0.5,1))
     NGenes PropDown PropUp Direction PValue    FDR PValue.Mixed FDR.Mixed
set1      5        0    1.0        Up 0.0025 0.0045       0.0025    0.0045
set2      5        0    0.2      Down 0.8930 0.8930       0.4380    0.4380
> fry(y=y,list(set1=iset1,set2=iset2),design,contrast=2,weights=w,array.weights=c(0.5,1,0.5,1))
     NGenes Direction      PValue         FDR PValue.Mixed    FDR.Mixed
set1      5        Up 0.001568924 0.003137848 0.0001156464 0.0002312929
set2      5      Down 0.932105219 0.932105219 0.4315499569 0.4315499569
> rownames(y) <- paste0("Gene",1:100)
> iset1A <- rownames(y)[1:5]
> fry(y=y,index=iset1A,design,contrast=2,weights=w,array.weights=c(0.5,1,0.5,1))
     NGenes Direction      PValue PValue.Mixed
set1      5        Up 0.001568924 0.0001156464
> 
> ### camera
> 
> camera(y=y,iset1,design,contrast=2,weights=c(0.5,1,0.5,1),allow.neg.cor=TRUE,inter.gene.cor=NA)
     NGenes Correlation Direction      PValue
set1      5  -0.2481655        Up 0.001050253
> camera(y=y,list(set1=iset1,set2=iset2),design,contrast=2,allow.neg.cor=TRUE,inter.gene.cor=NA)
     NGenes Correlation Direction       PValue        FDR
set1      5  -0.2481655        Up 0.0009047749 0.00180955
set2      5   0.1719094      Down 0.9068364378 0.90683644
> camera(y=y,iset1,design,contrast=2,weights=c(0.5,1,0.5,1))
     NGenes Direction       PValue
set1      5        Up 1.105329e-10
> camera(y=y,list(set1=iset1,set2=iset2),design,contrast=2)
     NGenes Direction       PValue          FDR
set1      5        Up 7.334400e-12 1.466880e-11
set2      5      Down 8.677115e-01 8.677115e-01
> camera(y=y,iset1A,design,contrast=2)
     NGenes Direction     PValue
set1      5        Up 7.3344e-12
> 
> ### with EList arg
> 
> y <- new("EList",list(E=y))
> roast(y=y,iset1,design,contrast=2)
         Active.Prop     P.Value
Down               0 0.996999250
Up                 1 0.003250813
UpOrDown           1 0.006500000
Mixed              1 0.006500000
> camera(y=y,iset1,design,contrast=2,allow.neg.cor=TRUE,inter.gene.cor=NA)
     NGenes Correlation Direction       PValue
set1      5  -0.2481655        Up 0.0009047749
> camera(y=y,iset1,design,contrast=2)
     NGenes Direction     PValue
set1      5        Up 7.3344e-12
> 
> ### eBayes with trend
> 
> fit <- lmFit(y,design)
> fit <- eBayes(fit,trend=TRUE)
> topTable(fit,coef=2)
           logFC     AveExpr         t      P.Value  adj.P.Val          B
Gene2   3.729512  1.73488969  4.865697 0.0004854886 0.02902331  0.1596831
Gene3   3.488703  1.03931081  4.754954 0.0005804663 0.02902331 -0.0144071
Gene4   2.696676  1.74060725  3.356468 0.0063282637 0.21094212 -2.3434702
Gene1   2.391846  1.72305203  3.107124 0.0098781268 0.24695317 -2.7738874
Gene33 -1.492317 -0.07525287 -2.783817 0.0176475742 0.29965463 -3.3300835
Gene5   2.387967  1.63066783  2.773444 0.0179792778 0.29965463 -3.3478204
Gene80 -1.839760 -0.32802306 -2.503584 0.0291489863 0.37972679 -3.8049642
Gene39  1.366141 -0.27360750  2.451133 0.0320042242 0.37972679 -3.8925860
Gene95 -1.907074  1.26297763 -2.414217 0.0341754107 0.37972679 -3.9539571
Gene50  1.034777  0.01608433  2.054690 0.0642289403 0.59978803 -4.5350317
> fit$df.prior
[1] 9.098442
> fit$s2.prior
    Gene1     Gene2     Gene3     Gene4     Gene5     Gene6     Gene7     Gene8     Gene9    Gene10    Gene11    Gene12 
0.6901845 0.6977354 0.3860494 0.7014122 0.6341068 0.2926337 0.3077620 0.3058098 0.2985145 0.2832520 0.3232434 0.3279710 
   Gene13    Gene14    Gene15    Gene16    Gene17    Gene18    Gene19    Gene20    Gene21    Gene22    Gene23    Gene24 
0.2816081 0.2943502 0.3127994 0.2894802 0.2812758 0.2840051 0.2839124 0.2954261 0.2838592 0.2812704 0.3157029 0.2844541 
   Gene25    Gene26    Gene27    Gene28    Gene29    Gene30    Gene31    Gene32    Gene33    Gene34    Gene35    Gene36 
0.4778832 0.2818242 0.2930360 0.2940957 0.2941862 0.3234399 0.3164779 0.2853510 0.2988244 0.3450090 0.3048596 0.3089086 
   Gene37    Gene38    Gene39    Gene40    Gene41    Gene42    Gene43    Gene44    Gene45    Gene46    Gene47    Gene48 
0.3104534 0.4551549 0.3220008 0.2813286 0.2826027 0.2822504 0.2823330 0.3170673 0.3146173 0.3146793 0.2916540 0.2975003 
   Gene49    Gene50    Gene51    Gene52    Gene53    Gene54    Gene55    Gene56    Gene57    Gene58    Gene59    Gene60 
0.3538946 0.2907240 0.3199596 0.2816641 0.2814293 0.2996822 0.2812885 0.2896157 0.2955317 0.2815907 0.2919420 0.2849675 
   Gene61    Gene62    Gene63    Gene64    Gene65    Gene66    Gene67    Gene68    Gene69    Gene70    Gene71    Gene72 
0.3540805 0.3491713 0.2975019 0.2939325 0.2986943 0.3265466 0.3402343 0.3394927 0.2813283 0.2814440 0.3089669 0.3030850 
   Gene73    Gene74    Gene75    Gene76    Gene77    Gene78    Gene79    Gene80    Gene81    Gene82    Gene83    Gene84 
0.2859286 0.2813216 0.3475231 0.3334419 0.2949550 0.3108702 0.2959688 0.3295294 0.3413700 0.2946268 0.3029565 0.2920284 
   Gene85    Gene86    Gene87    Gene88    Gene89    Gene90    Gene91    Gene92    Gene93    Gene94    Gene95    Gene96 
0.2926205 0.2818046 0.3425116 0.2882936 0.2945459 0.3077919 0.2892134 0.2823787 0.3048049 0.2961408 0.4590012 0.2812784 
   Gene97    Gene98    Gene99   Gene100 
0.2846345 0.2819651 0.3137551 0.2856081 
> summary(fit$s2.post)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
 0.2335  0.2603  0.2997  0.3375  0.3655  0.7812 
> 
> y$E[1,1] <- NA
> y$E[1,3] <- NA
> fit <- lmFit(y,design)
> fit <- eBayes(fit,trend=TRUE)
> topTable(fit,coef=2)
           logFC     AveExpr         t      P.Value  adj.P.Val          B
Gene3   3.488703  1.03931081  4.604490 0.0007644061 0.07644061 -0.2333915
Gene2   3.729512  1.73488969  4.158038 0.0016033158 0.08016579 -0.9438583
Gene4   2.696676  1.74060725  2.898102 0.0145292666 0.44537707 -3.0530813
Gene33 -1.492317 -0.07525287 -2.784004 0.0178150826 0.44537707 -3.2456324
Gene5   2.387967  1.63066783  2.495395 0.0297982959 0.46902627 -3.7272957
Gene80 -1.839760 -0.32802306 -2.491115 0.0300256116 0.46902627 -3.7343584
Gene39  1.366141 -0.27360750  2.440729 0.0328318388 0.46902627 -3.8172597
Gene1   2.638272  1.47993643  2.227507 0.0530016060 0.58890673 -3.9537576
Gene95 -1.907074  1.26297763 -2.288870 0.0429197808 0.53649726 -4.0642439
Gene50  1.034777  0.01608433  2.063663 0.0635275235 0.60439978 -4.4204731
> fit$df.residual[1]
[1] 0
> fit$df.prior
[1] 8.971891
> fit$s2.prior
  [1] 0.7014084 0.9646561 0.4276287 0.9716476 0.8458852 0.2910492 0.3097052 0.3074225 0.2985517 0.2786374 0.3267121
 [12] 0.3316013 0.2766404 0.2932679 0.3154347 0.2869186 0.2761395 0.2799884 0.2795119 0.2946468 0.2794412 0.2761282
 [23] 0.3186442 0.2806092 0.4596465 0.2767847 0.2924541 0.2939204 0.2930568 0.3269177 0.3194905 0.2814293 0.2989389
 [34] 0.3483845 0.3062977 0.3110287 0.3127934 0.4418052 0.3254067 0.2761732 0.2780422 0.2773311 0.2776653 0.3201314
 [45] 0.3174515 0.3175199 0.2897731 0.2972785 0.3567262 0.2885556 0.3232426 0.2767207 0.2762915 0.3000062 0.2761306
 [56] 0.2870975 0.2947817 0.2766152 0.2901489 0.2813183 0.3568982 0.3724440 0.2972804 0.2927300 0.2987764 0.3301406
 [67] 0.3437962 0.3430762 0.2761729 0.2763094 0.3110958 0.3041715 0.2822004 0.2761654 0.3507694 0.3371214 0.2940441
 [78] 0.3132660 0.2953388 0.3331880 0.3448949 0.2946558 0.3040162 0.2902616 0.2910320 0.2769211 0.3459946 0.2859057
 [89] 0.2935193 0.3097398 0.2865663 0.2774968 0.3062327 0.2955576 0.5425422 0.2761214 0.2808585 0.2771484 0.3164981
[100] 0.2817725
> summary(fit$s2.post)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
 0.2296  0.2581  0.3003  0.3453  0.3652  0.9158 
> 
> ### eBayes with robust
> 
> fitr <- lmFit(y,design)
> fitr <- eBayes(fitr,robust=TRUE)
> summary(fitr$df.prior)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  6.717   9.244   9.244   9.194   9.244   9.244 
> topTable(fitr,coef=2)
           logFC     AveExpr         t      P.Value   adj.P.Val          B
Gene2   3.729512  1.73488969  7.108463 1.752774e-05 0.001752774  3.3517310
Gene3   3.488703  1.03931081  5.041209 3.526138e-04 0.017630688  0.4056329
Gene4   2.696676  1.74060725  4.697690 6.150508e-04 0.020501693 -0.1463315
Gene5   2.387967  1.63066783  3.451807 5.245019e-03 0.131125480 -2.2678836
Gene1   2.638272  1.47993643  3.317593 8.651142e-03 0.173022847 -2.4400000
Gene33 -1.492317 -0.07525287 -2.716431 1.970991e-02 0.297950865 -3.5553166
Gene95 -1.907074  1.26297763 -2.685067 2.085656e-02 0.297950865 -3.6094982
Gene80 -1.839760 -0.32802306 -2.535926 2.727440e-02 0.340929958 -3.8653107
Gene39  1.366141 -0.27360750  2.469570 3.071854e-02 0.341317083 -3.9779817
Gene50  1.034777  0.01608433  1.973040 7.357960e-02 0.632875126 -4.7877548
> fitr <- eBayes(fitr,trend=TRUE,robust=TRUE)
> summary(fitr$df.prior)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  7.809   8.972   8.972   8.949   8.972   8.972 
> topTable(fitr,coef=2)
           logFC     AveExpr         t      P.Value  adj.P.Val          B
Gene2   3.729512  1.73488969  4.754160 0.0005999064 0.05999064 -0.0218247
Gene3   3.488703  1.03931081  3.761219 0.0031618743 0.15809372 -1.6338257
Gene4   2.696676  1.74060725  3.292262 0.0071993347 0.23997782 -2.4295326
Gene33 -1.492317 -0.07525287 -3.063180 0.0108203134 0.27050784 -2.8211394
Gene50  1.034777  0.01608433  2.645717 0.0228036320 0.38815282 -3.5304767
Gene5   2.387967  1.63066783  2.633901 0.0232891695 0.38815282 -3.5503445
Gene1   2.638272  1.47993643  2.204116 0.0550613420 0.58959402 -4.0334169
Gene80 -1.839760 -0.32802306 -2.332729 0.0397331916 0.56761702 -4.0496640
Gene39  1.366141 -0.27360750  2.210665 0.0492211477 0.58959402 -4.2469578
Gene95 -1.907074  1.26297763 -2.106861 0.0589594023 0.58959402 -4.4117140
> 
> ### voom
> 
> y <- matrix(rpois(100*4,lambda=20),100,4)
> design <- cbind(Int=1,x=c(0,0,1,1))
> v <- voom(y,design)
> names(v)
[1] "E"       "weights" "design"  "targets"
> summary(v$E)
       V1              V2              V3              V4       
 Min.   :12.38   Min.   :12.32   Min.   :12.17   Min.   :12.08  
 1st Qu.:13.11   1st Qu.:13.05   1st Qu.:13.11   1st Qu.:13.03  
 Median :13.34   Median :13.28   Median :13.35   Median :13.35  
 Mean   :13.29   Mean   :13.29   Mean   :13.28   Mean   :13.28  
 3rd Qu.:13.48   3rd Qu.:13.54   3rd Qu.:13.48   3rd Qu.:13.50  
 Max.   :14.01   Max.   :13.95   Max.   :14.03   Max.   :14.05  
> summary(v$weights)
       V1               V2               V3               V4        
 Min.   : 7.729   Min.   : 7.729   Min.   : 7.729   Min.   : 7.729  
 1st Qu.:13.859   1st Qu.:15.067   1st Qu.:14.254   1st Qu.:13.592  
 Median :15.913   Median :16.621   Median :16.081   Median :16.028  
 Mean   :16.773   Mean   :18.525   Mean   :18.472   Mean   :17.112  
 3rd Qu.:18.214   3rd Qu.:20.002   3rd Qu.:18.475   3rd Qu.:18.398  
 Max.   :34.331   Max.   :34.331   Max.   :34.331   Max.   :34.331  
> 
> ### goana
> 
> EB <- c("133746","1339","134","1340","134083","134111","134147","134187","134218","134266",
+ "134353","134359","134391","134429","134430","1345","134510","134526","134549","1346",
+ "134637","1347","134701","134728","1348","134829","134860","134864","1349","134957",
+ "135","1350","1351","135112","135114","135138","135152","135154","1352","135228",
+ "135250","135293","135295","1353","135458","1355","1356","135644","135656","1357",
+ "1358","135892","1359","135924","135935","135941","135946","135948","136","1360",
+ "136051","1361","1362","136227","136242","136259","1363","136306","136319","136332",
+ "136371","1364","1365","136541","1366","136647","1368","136853","1369","136991",
+ "1370","137075","1371","137209","1373","137362","1374","137492","1375","1376",
+ "137682","137695","137735","1378","137814","137868","137872","137886","137902","137964")
> go <- goana(fit,FDR=0.8,geneid=EB)
> topGO(go,number=10,truncate.term=30)
                                     Term Ont  N Up Down        P.Up      P.Down
GO:0032502          developmental process  BP 24  4    7 0.871310423 0.001532528
GO:0070062          extracellular exosome  CC  8  0    4 1.000000000 0.003047199
GO:0065010 extracellular membrane-boun...  CC  8  0    4 1.000000000 0.003047199
GO:0043230        extracellular organelle  CC  8  0    4 1.000000000 0.003047199
GO:1903561          extracellular vesicle  CC  8  0    4 1.000000000 0.003047199
GO:0006915              apoptotic process  BP  5  4    1 0.009503355 0.416247633
GO:0008219                     cell death  BP  5  4    1 0.009503355 0.416247633
GO:0012501          programmed cell death  BP  5  4    1 0.009503355 0.416247633
GO:0042981 regulation of apoptotic pro...  BP  5  4    1 0.009503355 0.416247633
GO:0043067 regulation of programmed ce...  BP  5  4    1 0.009503355 0.416247633
> topGO(go,number=10,truncate.term=30,sort="down")
                                     Term Ont  N Up Down      P.Up      P.Down
GO:0032502          developmental process  BP 24  4    7 0.8713104 0.001532528
GO:0070062          extracellular exosome  CC  8  0    4 1.0000000 0.003047199
GO:0065010 extracellular membrane-boun...  CC  8  0    4 1.0000000 0.003047199
GO:0043230        extracellular organelle  CC  8  0    4 1.0000000 0.003047199
GO:1903561          extracellular vesicle  CC  8  0    4 1.0000000 0.003047199
GO:0032501 multicellular organismal pr...  BP 33  7    7 0.7048432 0.013750585
GO:0016485             protein processing  BP  7  1    3 0.8497705 0.020760307
GO:0031982                        vesicle  CC 20  3    5 0.8982815 0.025464546
GO:0009887     animal organ morphogenesis  BP  3  0    2 1.0000000 0.025788497
GO:0043009 chordate embryonic developm...  BP  3  0    2 1.0000000 0.025788497
> 
> proc.time()
   user  system elapsed 
   3.00    0.42    3.60 

Example timings

limma.Rcheck/limma-Ex.timings

nameusersystemelapsed
EList0.0140.0020.018
LargeDataObject0.0000.0010.001
PrintLayout0.0000.0010.002
TestResults0.0000.0000.001
alias2Symbol10.561 0.66112.993
arrayWeights0.0200.0030.025
arrayWeightsQuick000
asMatrixWeights0.0010.0010.002
auROC0.0010.0000.002
avearrays0.0010.0010.003
avereps0.0020.0000.002
backgroundcorrect0.0100.0030.014
barcodeplot0.0730.0090.154
beadCountWeights0.0010.0000.000
blockDiag0.0010.0010.002
camera0.0500.0050.060
cbind0.0070.0020.011
changelog0.0530.1140.189
channel2M0.0020.0010.005
chooseLowessSpan0.0100.0030.016
classifytestsF0.0050.0010.007
contrastAsCoef0.0070.0010.010
contrasts.fit0.0230.0020.029
controlStatus0.0080.0010.010
coolmap0.2130.0290.276
cumOverlap0.0020.0000.002
detectionPValue0.0000.0010.000
diffSplice0.0000.0010.001
dim0.0010.0000.004
dupcor0.2950.0100.357
ebayes0.0180.0030.026
fitGammaIntercept0.0010.0010.001
fitfdist0.0000.0010.001
fitmixture0.0250.0040.034
genas0.1370.0160.180
geneSetTest0.0010.0010.002
getSpacing0.0010.0000.002
getlayout0.0000.0010.001
goana0.0000.0020.003
goanaTrend0.0700.0020.084
head0.0070.0020.010
heatdiagram0.0000.0000.001
helpMethods0.0000.0000.001
ids2indices0.0010.0010.002
imageplot0.0440.0070.058
intraspotCorrelation0.0000.0000.001
isfullrank0.0010.0010.002
isnumeric0.0010.0010.004
kooperberg0.0000.0010.001
limmaUsersGuide0.0020.0010.003
lm.series0.0000.0000.001
lmFit0.6600.0810.852
lmscFit0.0000.0010.001
loessfit0.0140.0040.021
logcosh0.0010.0000.001
logsumexp0.0000.0010.002
ma3x30.0010.0010.005
makeContrasts0.0020.0010.003
makeunique0.0010.0010.005
mdplot0.0080.0020.012
merge0.0090.0030.014
mergeScansRG0.0000.0010.002
modelMatrix0.0030.0020.004
modifyWeights0.0000.0010.002
nec0.0000.0010.001
normalizeMedianAbsValues0.0020.0010.002
normalizeRobustSpline0.0390.0100.060
normalizeVSN1.2500.0991.563
normalizebetweenarrays0.0030.0010.004
normalizeprintorder0.0000.0010.001
normexpfit0.0020.0000.004
normexpfitcontrol0.0000.0010.001
normexpfitdetectionp0.0000.0010.002
normexpsignal0.0010.0000.000
plotDensities0.0010.0010.000
plotExonJunc0.0000.0000.002
plotExons0.0000.0010.001
plotMD0.1180.0150.152
plotMDS0.0240.0030.033
plotRLDF0.5090.0050.583
plotSplice000
plotWithHighlights0.0200.0040.028
plotma0.1430.0150.181
poolvar0.0010.0000.001
predFCm0.0220.0010.026
printorder0.0110.0290.048
printtipWeights0.0010.0000.001
propTrueNull0.0030.0010.005
propexpr0.0000.0010.001
protectMetachar0.0010.0010.001
qqt0.0110.0010.014
qualwt0.0000.0000.001
rankSumTestwithCorrelation0.0090.0010.012
read.idat0.0000.0010.001
read.ilmn0.0010.0010.001
read.maimages0.0010.0000.001
readImaGeneHeader0.0000.0000.002
readgal000
removeBatchEffect0.0200.0020.028
removeext0.0010.0010.002
roast0.1100.0050.136
romer0.0350.0030.045
sampleInfoFromGEO0.0010.0010.002
selectmodel0.0170.0020.022
squeezeVar0.0010.0010.002
strsplit20.0000.0000.001
subsetting0.0070.0030.009
targetsA2C0.0070.0010.009
topGO0.0000.0000.001
topRomer000
topSplice0.0000.0000.001
toptable000
tricubeMovingAverage0.0030.0010.006
trigammainverse0.0000.0000.001
trimWhiteSpace0.0000.0000.001
uniquegenelist0.0010.0000.001
unwrapdups0.0010.0010.003
venn0.0370.0040.044
volcanoplot0.0000.0000.001
voom0.0010.0000.000
vooma0.0220.0030.030
weightedLowess0.0230.0020.027
weightedmedian0.0010.0000.001
writefit0.0010.0010.000
zscore0.0010.0000.002
zscoreT0.0010.0000.001