Entering edit mode
Andreia Fonseca
▴
810
@andreia-fonseca-3796
Last seen 7.8 years ago
Dear Heidi,
So I have each of my biological replicate in a plate, I have used the
following command to read the data:
> raw <- readCtData(files=files$File, path=path, n.features = 96, flag
= 4,
feature = 1, type = 2, position = 3, Ct = 5, header = FALSE, SDS =
FALSE)
my files:
File Treatment
1 Emb1.txt Embrio
2 Emb2.txt Embrio
3 Emb3.txt Embrio
4 lin1a.txt BM
5 lin2.txt BM
6 lin_1a.txt BM
7 lin1b.txt BM
8 Sca3.txt Heart
I did the filtering
raw.cat<-setCategory(raw, groups=files$Treatment, quantile=0.8)
and now I want to normalize:
d.norm<-normalizeCtDataraw.cat,norm="deltaCt",
deltaCt.genes=c("U6"))
and then I get the message:
Calculating deltaCt values
Using control gene(s): U6
Card 1: Mean=33.62 Stdev=NA
Card 2: Mean=32.65 Stdev=NA
Card 3: Mean=32.47 Stdev=NA
Card 4: Mean=35.46 Stdev=NA
Card 5: Mean=34.09 Stdev=NA
Card 6: Mean=34.39 Stdev=NA
Card 7: Mean=35.79 Stdev=NA
Card 8: Mean=33.72 Stdev=NA
so, for the normalization, the package is not taking into account the
variation of the endogenous gene U6 across technical and biological
replicates.How can I make the normalization taking into account the
mean and
standard deviation of the endogenous genes at least across the
biolgical
replicates of the same treatment?
Thanks
Kind regards,
Andreia
On Fri, Apr 30, 2010 at 8:53 PM, Heidi Dvinge <heidi@ebi.ac.uk> wrote:
> Hi Andreia
>
> > Dear Heidi,
> >
> > Sorry it seems that I have not understood your table well. All the
> samples
> > were analyzed using the same platform, but each sample is on a
different
> > plate. This way the commands are different right?
> > So going back to your table:
> >
> > Sample Cell_type Platform RT_reaction
> > ------------------------------
> > ------
> > 1 A type1 RT1
> > 1 A type1 RT1
> > 1 A type1 RT2
> > 2 A type1 RT1
> > 2 B type1 RT1
> > 3 B type1 RT1
> > 4 B type1 RT1
> >
> So, you actually just have cell type A and B you want to compare?
That
> makes it all easier. In that case you can use either of the three
> functions limmaCtData, ttestCtData and mannwhitneyCtData depending
on what
> you prefer. Both the vignette and the help pages has examples about
how to
> compare two groups. ttestCtData and mannwhitneyCtData are probably
easier
> if you just have two conditions, with mannwhitney perhaps being most
> suitable if you only have a small number of genes on each qPCR card.
>
> There's no way to account for the single different RT reaction
though. You
> can check if this is an outlier in any of the QC plots, like
plotCtDensity
> or plotCtBoxes, or perhaps try running the A versus B comparison
both
> with/without this card, and see if it skews the result in any
unexpected
> ways. Hopefully different RT reactions should be quite similar
though.
>
> HTH
> \Heidi
>
> > Thanks
> > Andreia
> >
> >
> > On Tue, Apr 27, 2010 at 11:11 AM, Heidi Dvinge <heidi@ebi.ac.uk>
wrote:
> >
> >>
> >> On 26 Apr 2010, at 09:41, Andreia Fonseca wrote:
> >>
> >> Dear heidi,
> >> thank you for your reply. The datasets come from a 96 well qPCR
plate,
> >> but
> >> only 80 reactions have good quality. Each line corresponds to a
separate
> >> plate, with the same probes. I would like to compare A and B.
Thanks for
> >> your help.
> >> Kind regards,
> >> Andreia
> >>
> >> Hello Andreia,
> >>
> >> so, what you probably want is to include the "Platform" as a
andom
> >> effect
> >> using the duplicateCorrelation() function from limma with block
> >> argument. If
> >> you type
> >>
> >> > limmaUsersGuide()
> >>
> >> you'll get the full limma users guide, which includes examples of
how to
> >> include different kinds of technical and biological variation.
This is
> >> basically what the limmaCtData() funciton is based on. So
generally
> >> you'd
> >> want to first do something like this (with "norm" being your
normalised
> >> qPCRset data):
> >>
> >> > targets <- data.frame(Cell=rep(c("A", "B"), times=3:4),
> >> Platform=rep(c("type1", "type2"), times=c(2,5)))
> >> > design <- model.matrix(~0+targets$Cell)
> >> > colnames(design) <- c("CellTypeA", "CellTypeB")
> >> > dupcor <- duplicateCorrelation(exprs(norm), design=design,
> >> block=targets$Platform)
> >>
> >> and then include the dupcor$correlation and block in the
> >> limmaCtData.There's a small bug in limmaCtData for including
dupcor
> >> though -
> >> I'll get that fixed.
> >>
> >> However, int his case that doesn't really matter, since I don't
think
> >> you
> >> can analyse you data this way, if you experiment design really is
as
> >> outlined in "targets" here. All platforms of type1 are used for
cell
> >> type A,
> >> there are none present for B.
> >>
> >> You might have to just ignore that the samples are measured on 2
> >> different
> >> platforms, and simply do a standard test between cell type A and
B, even
> >> though this is not optimal. How different are these platforms -
would
> >> you
> >> expect it to be significant for your analysis? Have you tried
testing
> >> for
> >> significance between Ct values measured on type1 and type2? Or
what's
> >> the
> >> dupcor$correlation between them? These are some of the things you
can
> >> look
> >> at before deciding how to continue.
> >>
> >> Best wishes
> >> \Heidi
> >>
> >> On Sat, Apr 24, 2010 at 12:45 PM, Heidi Dvinge <heidi@ebi.ac.uk>
wrote:
> >>
> >>> Hello Andreia,
> >>>
> >>> hm, slightly tricky. Are these data sets from some sort of
commercial
> >>> platform, like the ABI TLDA cards, or from normal qPCR reactions
on a
> >>> 384
> >>> well plate or similar? Just to make sure I understand you
experiment
> >>> right, do you have something like this?
> >>>
> >>> Sample Cell_type Platform RT_reaction
> >>> ------------------------------------
> >>> 1 A type1 RT1
> >>> 1 A type1 RT1
> >>> 1 A type2 RT2
> >>> 2 A type2 RT1
> >>> 2 B type2 RT1
> >>> 3 B type2 RT1
> >>> 4 B type2 RT1
> >>>
> >>> Is each line a separate plate? Or would the "Platform" column
> >>> correspond
> >>> to 2 individual plates, where multiple samples can be loaded
onto each
> >>> plate?
> >>> What exactly is your primary interest here? Difference between
cell
> >>> types
> >>> A and B? I think we need some specification here, for us to help
you
> >>> properly.
> >>>
> >>> If you have different kinds of plates, then you could
potentially
> >>> include
> >>> pate as a batch effect when doing your analysis. This will
require you
> >>> to
> >>> use limmaCtData() for your test. This is based on the function
lmFit
> >>> from
> >>> the limma package, which has some nice examples of how to take
this
> >>> sort
> >>> of information into account. Although it looks like you have too
many
> >>> variables here to consider all of them.
> >>>
> >>> By the way, you don't necessarily need one file per sample. As
long as
> >>> you
> >>> have the sample number of genes per sample, e.g. 384, then with
HTqPCR
> >>> version 1.2.0 you can use the n.data parameter in readCtData()
to
> >>> indicate
> >>> how many sets of data are in each file.
> >>>
> >>> HTH
> >>> \Heidi
> >>>
> >>> > Dear Heidi,
> >>> >
> >>> > I have received a data set from a qPCR miRNA set where I have
> >>> >
> >>> > sample1 - 2 replicates from the same RT reaction
> >>> > 1 replicate from an independen RT reaction
> >>> cell_type:A
> >>> > sample 2 - cell type : A
> >>> > sample2 cell_type:B
> >>> > sample3 cell_type:B
> >>> > sample 4 cell_type:B
> >>> >
> >>> > I saw that I should prepare one file per sample, but the
replicates
> >>> of
> >>> > sample1 have been produced in different plates and one is even
from
> >>> > another
> >>> > RT reaction. How can I account for this using your package?
> >>> > Thanks in advacne for your reply.
> >>> > With kind regards,
> >>> > Andreia
> >>> >
> >>> >
> >>> > --
> >>> > --------------------------------------------
> >>> > Andreia J. Amaral
> >>> > Unidade de Imunologia Clínica
> >>> > Instituto de Medicina Molecular
> >>> > Universidade de Lisboa
> >>> > email: andreiaamaral@fm.ul.pt
> >>> > andreia.fonseca@gmail.com
> >>> >
> >>>
> >>>
> >>>
> >>
> >>
> >> --
> >> --------------------------------------------
> >> Andreia J. Amaral
> >> Unidade de Imunologia Clínica
> >> Instituto de Medicina Molecular
> >> Universidade de Lisboa
> >> email: andreiaamaral@fm.ul.pt
> >> andreia.fonseca@gmail.com
> >>
> >>
> >>
> >
> >
> > --
> > --------------------------------------------
> > Andreia J. Amaral
> > Unidade de Imunologia Clínica
> > Instituto de Medicina Molecular
> > Universidade de Lisboa
> > email: andreiaamaral@fm.ul.pt
> > andreia.fonseca@gmail.com
> >
>
>
>
--
--------------------------------------------
Andreia J. Amaral
Unidade de Imunologia Clínica
Instituto de Medicina Molecular
Universidade de Lisboa
email: andreiaamaral@fm.ul.pt
andreia.fonseca@gmail.com
[[alternative HTML version deleted]]