[BioC] Renaming row names (U133A/B joining problem)
Martin Morgan
mtmorgan at fhcrc.org
Fri Mar 23 16:03:07 CET 2007
Hi Daniel,
I think the basic syntax is inverted --
rownames(obj)[1:3] <- 3:1
instead of
rownames(obj[1:3,]) <- 3:1
It's a little hard to tell what expr.matrix is. A matrix?
> m <- matrix(0,10,5)
> rownames(m)[1:4] <- 4:1 # need to have dims before they can be changed!
Error in dimnames(x) <- dn : length of 'dimnames' [1] not equal to array extent
> rownames(m) <- 1:10
> rownames(m)[1:4] <- 4:1
> m
[,1] [,2] [,3] [,4] [,5]
4 0 0 0 0 0
3 0 0 0 0 0
2 0 0 0 0 0
1 0 0 0 0 0
5 0 0 0 0 0
6 0 0 0 0 0
7 0 0 0 0 0
8 0 0 0 0 0
9 0 0 0 0 0
10 0 0 0 0 0
But maybe it's an 'ExpressionSet' or 'exprSet'. What does
> class(expr.matrix)
say? If it's an ExpressionSet (or I think also an exprSet), then
you'll want to do the equivalent of
> obj <- new("ExpressionSet", exprs=matrix(0,10,5))
> obj
ExpressionSet (storageMode: lockedEnvironment)
assayData: 10 features, 5 samples
element names: exprs
phenoData
sampleNames: 1, 2, ..., 5 (5 total)
varLabels and varMetadata: none
featureData
featureNames: 1, 2, ..., 10 (10 total)
varLabels and varMetadata: none
experimentData: use 'experimentData(object)'
Annotation character(0)
> featureNames(obj)
[1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10"
> featureNames(obj)[2:4] <- 4:2
> featureNames(obj)
[1] "1" "4" "3" "2" "5" "6" "7" "8" "9" "10"
> obj
ExpressionSet (storageMode: lockedEnvironment)
assayData: 10 features, 5 samples
element names: exprs
phenoData
sampleNames: 1, 2, ..., 5 (5 total)
varLabels and varMetadata: none
featureData
featureNames: 1, 4, ..., 10 (10 total)
varLabels and varMetadata: none
experimentData: use 'experimentData(object)'
Annotation character(0)
Hope that helps,
Martin
Daniel Brewer <daniel.brewer at icr.ac.uk> writes:
> Hi,
>
> I have a expression dataset where I want to join Affymetrix U133A and B
> arrays. The rownames of the expression matrix are set to the probe
> names. To do this I want to treat all the probe names that are shared
> between the arrays as unique by appending an "_A" or "_B". I do this by
> finding the names of the probe that are shared and then running:
>
> rownames(expr.matrix[match(ProbeIntersect,rownames(expr.matrix)),]) <-
> paste(rownames(expr.matrix[match(ProbeIntersect,rownames(expr.matrix)),]),"_A",sep="")
>
> Where "expr.matrix" is the expression matrix and "ProbeIntersect" is the
> list of probe names that are shared. This command though does not seem
> to change the row names. Any idea what I am doing wrong?
>
> Thanks
>
> Daniel
>
> --
> **************************************************************
>
> Daniel Brewer, Ph.D.
> Institute of Cancer Research
> Email: daniel.brewer at icr.ac.uk
>
> **************************************************************
>
> The Institute of Cancer Research: Royal Cancer Hospital, a charitable Company Limited by Guarantee, Registered in England under Company No. 534147 with its Registered Office at 123 Old Brompton Road, London SW7 3RP.
>
> This e-mail message is confidential and for use by the addre...{{dropped}}
>
> _______________________________________________
> 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
Bioconductor / Computational Biology
http://bioconductor.org
More information about the Bioconductor
mailing list