我想用另一个字符替换字符串中的一个字符,首先用字符取样。我无法打印出字符而不是索引。R:如何在取样和打印出字符而不是索引后替换字符串中的字符?
实例数据,标有“尝试”:
L 0.970223325 - 0.019851117 X 0.007444169
K 0.962779156 - 0.027295285 Q 0.004962779
P 0.972704715 - 0.027295285 NA 0
C 0.970223325 - 0.027295285 L 0.00248139
V 0.970223325 - 0.027295285 T 0.00248139
我试图样品使用加权的概率给定行的字符。
samp <- function(row) {
sample(try[row,seq(1, length(try), 2)], 1, prob = try[row,seq(2, length(try), 2)])
}
然后,我想用选定的字符替换给定字符串中的位置。
subchar <- function(string, pos, new) {
paste(substr(string, 1, pos-1), new , substr(string, pos+1, nchar(string)), sep='')
}
我的问题是 - 如果我这样做,例如
> subchar("KLMN", 3, samp(4))
[1] "KL1N"
但我想它改为 “KLCN”。 As.character(samp(4))也不起作用。我如何让它打印出字符而不是索引?
警告:有一个函数'try',这样可以避免可能更喜欢在名称混乱你的数据mytry或者tryfoo。 – 2012-07-11 15:32:11