[BioC] shuffle the sample names of an expressionSet
Martin Morgan
mtmorgan at fhcrc.org
Mon Nov 10 18:31:02 CET 2008
Hi Al --
"Al Tango" <time.is.flying at gmail.com> writes:
> Hi, all, I want to randomly shuffle sample names in an object of
> expressionSet, aiming
> to perform permutation test. I did as follows, but the following test
> result remained unchanged (When I shuffled the original data file
> names before 'ReadAffy()' , the result did change). So it must be
> wrong; what's the way please? Thanks to everybody who help / has
> helped me.
> e.g.
>
> library(affy)
> eset=rma(ReadAffy(filenames=c('sample1.CEL','sample2.CEL','sample3.CEL'))
>
> # below was what I did to shuffle sample names
>
>
This
> data(sample.ExpressionSet)
> obj1 <- obj <- sample.ExpressionSet
> sampleNames(obj1) <- sample(sampleNames(obj))
shuffles exprs and phenoData names.
> head(exprs(obj), 2)
A B C D E F G
AFFX-MurIL2_at 192.742 85.7533 176.7570 135.5750 64.4939 76.3569 160.5050
AFFX-MurIL10_at 97.137 126.1960 77.9216 93.3713 24.3986 85.5088 98.9086
H I J K L M N
AFFX-MurIL2_at 65.9631 56.9039 135.6080 63.4432 78.2126 83.0943 89.3372
AFFX-MurIL10_at 81.6932 97.8015 90.4838 70.5733 94.5418 75.3455 68.5827
O P Q R S T U
AFFX-MurIL2_at 91.0615 95.9377 179.8450 152.467 180.834 85.4146 157.98900
AFFX-MurIL10_at 87.4050 84.4581 87.6806 108.032 134.263 91.4031 -8.68811
V W X Y Z
AFFX-MurIL2_at 146.8000 93.8829 103.8550 64.4340 175.6150
AFFX-MurIL10_at 85.0212 79.2998 71.6552 64.2369 78.7068
> head(exprs(obj1), 2)
S G W L C B I
AFFX-MurIL2_at 192.742 85.7533 176.7570 135.5750 64.4939 76.3569 160.5050
AFFX-MurIL10_at 97.137 126.1960 77.9216 93.3713 24.3986 85.5088 98.9086
N Q O K R U J
AFFX-MurIL2_at 65.9631 56.9039 135.6080 63.4432 78.2126 83.0943 89.3372
AFFX-MurIL10_at 81.6932 97.8015 90.4838 70.5733 94.5418 75.3455 68.5827
M Z E F Y D V
AFFX-MurIL2_at 91.0615 95.9377 179.8450 152.467 180.834 85.4146 157.98900
AFFX-MurIL10_at 87.4050 84.4581 87.6806 108.032 134.263 91.4031 -8.68811
T P X A H
AFFX-MurIL2_at 146.8000 93.8829 103.8550 64.4340 175.6150
AFFX-MurIL10_at 85.0212 79.2998 71.6552 64.2369 78.7068
> head(pData(obj), 2)
sex type score
A Female Control 0.75
B Male Case 0.40
> head(pData(obj1), 2)
sex type score
S Female Control 0.75
G Male Case 0.40
but I think it is just a tidier way of doing what you already
did. Perhaps what you meant to do was to shuffle some aspects of
phenoData, e.g.,
> obj1 <- obj
> pData(obj1)[["type"]] <- sample(pData(obj1)[["type"]])
> head(pData(obj), 5)
sex type score
A Female Control 0.75
B Male Case 0.40
C Male Control 0.73
D Male Case 0.42
E Female Case 0.93
> head(pData(obj1), 5)
sex type score
A Female Case 0.75
B Male Case 0.40
C Male Case 0.73
D Male Control 0.42
E Female Case 0.93
? What are you doing that you would like to see the permutation of?
Martin
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor
--
Martin Morgan
Computational Biology / Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N.
PO Box 19024 Seattle, WA 98109
Location: Arnold Building M2 B169
Phone: (206) 667-2793
More information about the Bioconductor
mailing list