【发布时间】:2011-11-01 20:55:08
【问题描述】:
我想分割字符。虽然我有一个大的数据框要工作,但下面的小例子展示了需要做什么。
mydf <- data.frame (name = c("L1", "L2", "L3"),
M1 = c("AC", "AT", NA), M2 = c("CC", "--", "TC"), M3 = c("AT", "TT", "AG"))
我想拆分变量 M1 到 M3 的字符(在实际数据集中我有 > 6000 个变量)
name M1a M1b M2a M2b M3a M3b
L1 A C C C A T
L2 A T - - T T
L3 NA NA T C A G
我尝试了以下代码:
func<- function(x) {sapply( strsplit(x, ""),
match, table= c("A","C","T","G", "--", NA))}
odataframe <- data.frame(apply(mydf, 1, func) )
colnames(odataframe) <- paste(rep(names(mydf), each = 2), c("a", "b"), sep = "")
odataframe
【问题讨论】: