[BioC] PLIER affinities redux
Jeremy Gollub
jeremy at gollub.net
Tue Oct 18 20:12:15 CEST 2005
Hi, Matt -
This was indeed useful.
Examining r$affinity for a varying number of samples on RAE230A arrays,
I find the following behavior:
- length(r$affinity) = <# of samples> * 175,477
- I believe 175,477 is the number of useful probe pairs on the array.
- sum(r$affinity != 0) <= min(<# probe sets> * <# samples>, <# probe pairs>)
That is, the number of non-zero values increases to a maximum of the number
of probe pairs, but is always less than the number of probe sets * samples.
This explains why your results suggest probe sets * samples - if you used
more samples, you'd see the non-zero affinities hit a maximum count of
the number of probe pairs.
It seems pretty clear that this behavior arises from the C++ code, not
from justPlier as I previously suggested. I still suspect it's incorrect,
though, since my understanding of the PLIER algorithm is that there should
always be one affinity value per probe pair (so I should always be seeing
175,477 non-zero values, minus the values that are legitimately zero). I'll
see whether I can confirm that, and report back if so. Comments from those
more knowledgeable than I would be greatly appreciated.
Thanks,
- Jeremy
Matthew Hannah wrote:
>
> Jeremy,
>
> I got distracted whilst still in draft and in the meantime Jim has responded. Anyway to add -
>
> I pasted your code into my fresh BioC install and it doesn't work with the ATH1121501 array either, it's inherent in the justPlier code.
> Looking at justPlier code shows that it returns a matrix of probeNames(eset) x sampleNames(eset) which is consistent with what we find. After investigating it seems the r$affinity (within justPlier) is 159683 values followed by zeros until length 1757546. This is ~100000 short of what is needed for 1 affinity per probepair but if you divide it by the number of arrays I had = 159683/7 = 22811.86 it is pretty close to the number of probesets on the array(22810). So this would imply a probesets x samples output matrix.
>
> Not sure if this is still helpful after Jim's response.
>
> Cheers,
> Matt
>
> Dr. Matt Hannah
> Max-Planck Institute of Molecular Plant Physiology
> Am Mühlenburg 1
> 14476 Golm
> Germany
>
> + 49 (331) 567 8255 (phone)
> + 49 (331) 567 8250 (fax)
>
>
>
>
>
>
> >>>>>>>>>>>>>>>>>>
> Hi, All -
>
> James MacDonald (I think) answered my previous posting, and I promptly
> lost the message. Thanks, James, and apologies.
>
> The issue at hand was strange and (I believe) incorrect reporting of
> probe affinities from justPlier (plier package). At James' suggestion
> I have update to R 2.2.0 and plier 1.2.0, but the affinities are still
> coming back in a sparse <# probe pairs> X <# arrays> matrix, rather than
> as a useful vector. The colnames of this matrix are the sampleNames from
> the eset provided to justPlier; the rownames are the probeNames.
>
> James, you said this doesn't happen to you. How do you retrieve the
> affinities? Maybe I'm just looking at the wrong slot (see below).
> Looking at the justPlier source code, though, I don't see any other
> way to get them.
>
> Also, does justPlier allow one to pass the affinities back to another
> invocation of the method, rather than computing them from the current
> data?
>
> Thanks,
>
> - Jeremy Gollub
>
>
> The session (edited for readability):
>
> # ---------------------------------------------------------------------
>
> > sessionInfo())
> R version 2.2.0, 2005-10-06, i386-pc-mingw32
>
> attached base packages:
> [1] "tools" "methods" "stats" "graphics" "grDevices" "utils"
> [7] "datasets" "base"
>
> other attached packages:
> rae230acdf plier affy Biobase qvalue
> "1.10.0" "1.2.0" "1.8.1" "1.8.0" "1.4.0"
>
> > data <- ReadAffy()
> > data
> AffyBatch object
> size of arrays=602x602 features (50972 kb)
> cdf=RAE230A (15923 affyids)
> number of samples=18
> number of genes=15923
> annotation=rae230a
>
> > res <- justPlier(data, get.affinities = TRUE)
> > dim(res at description <https://stat.ethz.ch/mailman/listinfo/bioconductor> @preprocessing$affinity)
> [1] 175477 18
>
> > sum(res at description <https://stat.ethz.ch/mailman/listinfo/bioconductor> @preprocessing$affinity != 0)
> [1] 175407
>
> # ----------------------------------------------------------------------
>
> --
> Jeremy Gollub
> jeremy at gollub.net <https://stat.ethz.ch/mailman/listinfo/bioconductor>
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
>
>
--
Jeremy Gollub
jeremy at gollub.net
More information about the Bioconductor
mailing list