dear Harris A. Jaffee, h...@jhu.edu thank u very much for your explaination. but i am still confused because of not knowing its algorithm could u tell me if i can read them from lowlevel_matching.c
let me try to concluded what u have told me: 1. the algorithm will change every max.Rmismatch to a vector. by adding -1 if it is not 0. e.g. if max.Lmismatch=0 it will do : max.Lmismatch = rep(0, nchar(Lpattern)) if max.Lmismatch=c(2,2) it will get 2 2 -1 -1 -1 how does the algorithm use -1 or 0 to control the alignment?? 2. the algorithm will try any suffix segment on Lmismatch by substr(Lpattern, i, nchar(Lpattern)), i = 1:nchar(Lpattern) e.g. Lpattern = "TTTAACGT" it will try "T","GT",...... 3. during each try, if the length of segment is equal to the lenght of subject, the algoritm will stop, except it can allow indel. 4. and indel should be counted as a mismatch so it is : > subject = "TTTACGT" > Lpattern = "TTTAACGT" # pattern has an extra 'A' # need to allow for 1 "edit", to remove the extra A > trimLRPatterns(Lpattern = Lpattern, subject = subject, max.Lmismatch=1, with.Lindels=TRUE) [1] "" trimLRPatterns(Lpattern = Lpattern, subject = subject, max.Lmismatch=4) [1] "" i think when the algorithm take "TTAACGT", never try "TTTAACGT", because no indel allowed. > [[alternative HTML version deleted]] _______________________________________________ Bioc-sig-sequencing mailing list Bioc-sig-sequencing@r-project.org https://stat.ethz.ch/mailman/listinfo/bioc-sig-sequencing