Skip to content
Prev 2725 / 21312 Next

[Bioc-devel] question on annotations and data.frames

Hi Andreas,
On 8/23/2011 8:12 AM, Andreas Heider wrote:
Here is one way:

 > df <- data.frame(ID = 1:4,
Symbol = I(c("Bla","Foo","XYZ // xyz // xyz01", "abc")))

 > lst <- tapply(1:nrow(df), df$ID, function(x) df[x,2])
 > lst <- lapply(lst, function(x) strsplit(x, " // "))
 > newdf <- data.frame(ID = rep(df[,1], sapply(lst, length)), Symbol = 
unlist(lst))
 > newdf
    ID Symbol
1   1    Bla
2   2    Foo
31  3    XYZ
32  3    xyz
33  3  xyz01
4   4    abc

Best,

Jim