小编Luc*_*ion的帖子

比较相同向量的相邻元素(避免循环)

我设法写了一个for loop比较以下向量中的字母:

bases <- c("G","C","A","T")
test <- sample(bases, replace=T, 20)
Run Code Online (Sandbox Code Playgroud)

test 将返回

[1] "T" "G" "T" "G" "C" "A" "A" "G" "A" "C" "A" "T" "T" "T" "T" "C" "A" "G" "G" "C"
Run Code Online (Sandbox Code Playgroud)

通过该功能,Comp()我可以检查字母是否与下一个字母匹配

Comp <- function(data)
{
    output <- vector()
    for(i in 1:(length(data)-1))
    {
    if(data[i]==data[i+1])
        {
        output[i] <-1
        }
        else
        {
        output[i] <-0
        }
    }
    return(output)
}
Run Code Online (Sandbox Code Playgroud)

导致;

> Comp(test)
 [1] 0 0 0 0 0 1 0 0 0 0 0 1 1 1 …
Run Code Online (Sandbox Code Playgroud)

r vector string-comparison sapply

5
推荐指数
1
解决办法
4740
查看次数

标签 统计

r ×1

sapply ×1

string-comparison ×1

vector ×1