[BioC] HTqPCR : readCtData problem?

Heidi Dvinge heidi at ebi.ac.uk
Tue Oct 26 19:44:55 CEST 2010

Hello Steve,

thanks for sending me the file, I've just tried playing with it.

ndups is indeed for technical replicates, so you don't need that here.
Apparently there's a bug hiding somewhere. The results look correct so the
biological replicates are actually taken into account, but the entire
output is repeated 3 times. Hence, each feature (miRNA in your case) is
present 3 times, with identical t and p-values. This is the case even if
the design file is manipulated to contain 2 replicates of each sample
instead of 3. I.e. limmaCtData does not report an individual result for
each biological replicate, but does consider them jointly as you would

I'll try to figure our why/when this happens, but in the meantime you can
just ignore the duplication of the results. Sorry for the hassle this
might cause you.

It never ceases to amaze me what bugs I somehow manage to introduce into
my code :)

Just for my debugging purposes, how do you read in all 8 files containing
your 24 samples? Do you run readCtData(files=c("file1", ..., "file8"),
...) with 3 samples in each file => qPCRset object with 384x24
rows/columns? Or do you read each file into a separate qPCRset object => 8
qPCRset objects with 384x3 rows/columns and then combine them with


> Dear Heidi,
>> just to clear my mind here, exactly what type of replicates are we
>> talking
>> about?
> Biological.
>> 1) The same miRNA is present three times on the qPCR card for each
>> sample?
>> Per default, this isn't taken into account by limmaCtData. You'll need
>> to
>> resort your qPCRset by featureNames(), so that all triplicates are next
>> to
>> each other, and then call limmaCtData(..., ndups=3, spacing=1) to
>> indicate
>> the number of duplications (3) and the spacing between them (1, since
>> they
>> are adjacent in the resorted qPCRset). As I recall, there's an example
>> of
>> this in ?limmaCtData with duplicate spots.
> These are separate arrays really because they are biological replicates.
> Isn't ndups in limma is usually for technical
> replicates?
>> 2) The same miRNA is present three times on the qPCR card, but in
>> different "lanes" belonging to different samples? In that case the
>> qPCRset
>> will ahve to be reformatted after readCtData, to reflect that there are
>> multiple samples on each 384 well card. changeCtLayout () should give
>> some
>> examples on this, although I admit that the vignettes could use some
>> more
>> examples on this.
>> I'm asking since in the example you present below, you say you're
>> reading
>> in a file with 3 samples (which BTW looks fine), but according to you
>> design matrix you have 8 different samples.
> So there are 8 files, each containing 3 x 384 wells for each biological
> replicate, which is where the 24 comes from.
> I have attached one of the files for you to look at ( I didn't include
> this to BioC for that reason ).
> I have got the user to export each file separately, so each replicate is
> in a separate file. Will HTqPCR be able to
> process this correctly in that case?
> Kind regards and thanks,
> Steve
> ============================================
> Head of Computational Biology Research Group
> Weatherall Institute of Molecular Medicine
> University of Oxford
> John Radcliffe Hospital
> Headington
> Oxford OX3 9DS
> +44 1865 222640

More information about the Bioconductor mailing list