[BioC] sva: No significant surrogate variables

Shraddha Pai Shraddha.Pai at camh.ca
Wed Mar 27 03:53:36 CET 2013

Hi everyone,
I'm unsuccessfully trying to apply SVA to a matrix that's 164K x 51.
There are two variables of interest: sample tissue (2 levels) and age (6

# xpr is my matrix of microarray intensities
	modmat <- model.matrix(~1 + as.numeric(pheno$tissue), xpr) # result is
same even if I use tissue & age.
	n.sv <- num.sv(xpr,modmat,method="leek")

I get n.sv = 0. This happens whether or not I include an intercept.

On the other hand if I do not supply the 'method' argument:
	n.sv <- num.sv(xpr,modmat)
I get n.sv = 15.
But then running the sva() comment gives me the following error:
Number of significant surrogate variables is:  15
Iteration (out of 5 ):
Error in cbind(mod0, uu$vectors[, 1:n.sv]) :
  number of rows of matrices must match (see arg 2)


Is SVA inappropriate for my data because n.sv = 0?
And what does it mean that the matrix has no surrogate variables (I.e.
Does it mean the data are too noisy for SVA to detect any sv, or could
there be another reason?)
In the model matrix above, I deliberately excluded the age variable to see
if SVA would identify it as a latent variable. n.sv didn't increase to 1
because of this omission. I'm a bit puzzled as to why that is.

I'm using R 2.15.0, sva-3.4.0, and mgcv 1.7.22 on an Ubuntu machine.

Any help would be much appreciated.

Shraddha Pai
Post-doctoral fellow
Krembil Family Epigenetic Research Laboratory
Centre for Addiction and Mental Health, Toronto

This email has been scanned by the CAMH Email Security System.

More information about the Bioconductor mailing list