R字符串拆分函数中的非字符参数(strsplit)

时间:2013-03-15 10:31:04

标签: string r for-loop strsplit

这有效

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],“\:”):非字符参数

如果我有一个,两个或空的反斜杠,那没关系。

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

1 个答案:

答案 0 :(得分:29)

由于agstudy在循环修复之前隐含blat$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)
}