R/do10_2.R

do10_2<-function(x49_1, x49_14) {
    x402_1 <- c(FALSE, tail(x49_14,-1) == head(x49_14,-1));
    x402_2 <- c(tail(x402_1,-1), FALSE);

    res<-do10_1(x49_1);

    x49_2<-res$x49_2;
    x49_3<-res$x49_3;
    
    x49_2_1 <- rep(0, 1+length(x49_2)+1);
    for(k1 in 1:nrow(x49_3)) {
        x401_1<-which(x49_2==k1);
        x401_5 <- x402_1[x401_1]&c(FALSE, head(x401_1,-1)+1==tail(x401_1,-1));
        x401_5 <- cumsum(!x401_5);
        x401_7 <- which(!duplicated(x401_5));
        x401_6 <- x402_1[x401_1]&(x49_2_1[x401_1]!=0) | x402_2[x401_1]&(x49_2_1[x401_1+2]!=0);
        x401_8 <- cbind(x401_6[x401_7], x401_6[c(tail(x401_7,-1)-1, length(x401_6))]);
        x401_9 <- (x401_8[,1] | x401_8[,2])[x401_5];
        x49_2_1[x401_1[!x401_9]+1] <- k1;
        x49_2_1[x401_1[x401_9]+1] <- -k1;
    }
    x49_2 <- x49_2_1[-c(1, length(x49_2_1))];

    list(x49_2=x49_2, x49_3=x49_3);
}
RabadanLab/mutcomfocal documentation built on June 3, 2019, 5:21 a.m.