User:Timothee Flutre/Notebook/Postdoc/2011/11/09

From OpenWetWare
< User:Timothee Flutre‎ | Notebook‎ | Postdoc‎ | 2011‎ | 11
Revision as of 10:18, 10 November 2011 by Timothee Flutre (talk | contribs) (Entry title: use R built-in "match")
Jump to: navigation, search
Owwnotebook icon.png Project name <html><img src="/images/9/94/Report.png" border="0" /></html> Main project page
<html><img src="/images/c/c3/Resultset_previous.png" border="0" /></html>Previous entry<html>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</html>Next entry<html><img src="/images/5/5c/Resultset_next.png" border="0" /></html>

Entry title

  • in R, replace the row names of a matrix by their new names when the order is different (but assuming one-to-one mapping):
links <- data.frame(id1=c("a","b","c"), id2=c("1","2","3"), stringsAsFactors=FALSE)
mat <- matrix(runif(3*10), nrow=3)
rownames(mat) <- c("b","c","a")
new.rownames <- unlist(lapply(rownames(mat), function(i){links$id2[which(links$id1 == i)]}))
rownames(mat) <- new.rownames

Or it's maybe easier with the built-in match function:

new.rownames <- links$id2[ match(rownames(mat), links$id1) ]

  • in R, visualize the missing values (encoded as "NA") in a matrix:
image(1:nrow(mat), 1:ncol(mat),, col=c("white","black"),
      main="Missing values", xlab="Genes", ylab="Samples")

Visualize missing values in matrix.png