33

这有效

x <- "0.466:1.187:2.216:1.196"
y <- as.numeric(unlist(strsplit(x, ":")))

所有的值blat$LRwAvg看起来像X上面,但这不起作用

for (i in 1:50){
  y <- as.numeric(unlist(strsplit(blat$LRwAvg[i], "\\:")))
  blat$meanLRwAvg[i]=mean(y)
}

因为:

strsplit(blat$LRwAvg[i], "\:") 中的错误:非字符参数

我有一个、两个或空反斜杠都没关系。

我的问题是什么?(一般来说,我的意思是在这项特殊任务中,技术上)

4

1 回答 1

37

正如 agstudyblat$LRwAvg <- as.character(blat$LRwAvg)在循环修复之前暗示的那样

blat$meanLRwAvg <- blat$gtFrqAvg #or some other variable in data frame with equal length
blat$LRwAvg <- as.character(blat$LRwAvg)
for (i in 1:50){
  y <- as.numeric(unlist(strsplit(blat$LRwAvg[i], "\\:")))
  blat$meanLRwAvg[i]=mean(y)
}
于 2013-03-15T11:07:13.430 回答