### r代码来自Vignette Source'ArtoFalignmentInr.rnw'########################################################### ###代码块编号1:artofalignmentinr.rnw:51-53 ##############################################################################################2:expr0 ############################库(编译))n2 < - 天花板(2^seq(5,13,length.out = n_points))n3 < - 天花板(2^seq(5,16,length.out = n_points))timings0 <-setNames(rep(0),长度(n0)),n0)timings1 < - setNames(rep(0,length(n1)),n1)timings2 < - setNames(rep(0,length(n2)),n2)timings3 < - setNames(rep(rep)0,长度(n3)),n3)for(i in seq_len(length(n0))){for(j in 0:3){n < - eval(parse(parse(text = paste = paste(“ n”,j,j,sep))=“”)))#用15%距离字符串1 <-dnastringset模拟序列(paste(sample(dna_alphabet [1:4]),n [i],替换= true),collapse =“”))string2 < - 替换(string1,at = iranges(sample(n [i],天花板)(n [i]/5)),宽度= 1),sample(c(dna_alphabet [dna_alphabet [dna_alphabet [1:4],“”),天花板(n [i]/5),替换= true))#如果(j == 0){timings0 [i] <-System.Time(pairwiseAlignment)使用两种方法对齐序列(string1,string2)))[[“ user.self”]]}} else if(j == 1){timings1 [i] <-System.Time(align1,String1,String2,string2,drillict = c(-1e10,1e10,1e10,1e10,1e10)1e10),adnaind = na))[[“ user.self”]]} else if(j == 2){timings2 [i] <-System.Time(align1,string1,string2,string2,arnchor = na))[[[[“ user.self”]]]} else {#j == 3 Timings3 [i] <-System.Time(alignProfiles(String1,string2))[[“ user.self”]}}}}}}} c0 <-lm(timings00〜n0 + i(n0^2))c1 <-lm(timings1〜n1 + i(n1^2))c2 <-lm(timings2〜n2)c3 <-lm(timings3〜n3)n <-seq(1, 46340, length.out=1000) # prediction range plot(N0, timings0, xlab = "Sequence length (nucleotides)", ylab = "Elapsed Time (sec.)", main = "", ylim=c(range(timings0, timings1, timings2, timings3, predict(c2, data.frame(N2=46340)))), xlim=c(0, max(N3))) points(N, predict(c0, data.frame(N0 = N)), type="l", lty=3) points(N1, timings1, col="blue", pch=0) points(N, predict(c1, data.frame(N1 = N)), type="l", lty=3, col="blue") points(N2, timings2, col="red", pch=5) points(N, predict(c2, data.frame(N2 = N)), type="l", lty=3, col="red") N <- seq(1, max(N3), length.out=1000) # prediction range points(N3, timings3, col="green", pch=2) points(N, predict(c3, data.frame(N3 = N)), type="l", lty=3, col="green") legend("bottomright", c("Biostrings::pairwiseAlignment", "AlignProfiles (unrestricted, unanchored)", "AlignProfiles (restricted, unanchored)", "AlignProfiles (restricted, anchored)"), pch=c(1, 0, 5, 2), lty=3, col=c("black", "blue", "red", "green"), bg="white") ################################################### ### code chunk number 3: expr1 ################################################### library(DECIPHER) # specify the path to your sequence file: fas <- "<
>“#或查找本教程中使用的示例序列文件:fas <-system.file(“ extdata”,“ 50s_ribosomal_protein_l2.fas”,package =“ decipher”)dna <-ereddnastringset(fas)################################代码块编号4:expr2(eval = false)########################################################## dna <-AlignSeqs(DNA)#直接对序列直接对齐序列而无需翻译## dna <-AlignTranslation(dna)#对齐翻译,然后反向翻译## ## ###将对齐序列写入fasta file ## writexstringset(dna),file =“ <
>“)############################################### ###代码块编号5:expr3(eval = false)#################################################### u_dna <-Alignseqs(u_dna)#直接对序列直接对齐,无需翻译## dna <-u_dna [index] ## names(dna)<-名称(dna)#重新复制对齐#######################################数字6:expr4(eval = false)######################################################## ## ###包含16s核糖体RNA序列## db <-system.file(“ extdata”,“ bacteria_175seqs.sqlite”,package =“ depipher”)## ## ## rna
>“)## ## alignedrna <-Alignseqs(RNA)#与RNA二级结构对齐############################################################# ###代码块数字7:expr6(eval = false)########################################################### dna1 < - dna [1:falm]#上半场## dna2 < - dna [(半 + 1):长度(dna)]#下半部## ## ## aa1 <-AlignTranslation(DNA1,type =“ aastringset =” aastringset”)## aa2 < - aligntranslation(dna2,type =“ aastringset”)## aa <-AlignProfiles(aa1,aa2)#对齐两个对齐########################################################################################对齐DNA序列存储在单独的表中:## dbConn <-dbConnect(sqlite(),“:memory:”)## seqs2db(aa1,“ dnastringset”,dbconn,dbconn,“ aa1”seqs2db(aa2,“ dnastringset”,dbconn,“ aa2”,tblName =“ aa2”)## aligndb(dbconn,tblname = c(“ aa1”,“ aa2”),add2tbl =“ aa”,aa aa“ aa”,## type =“”,## type =“”,## type =“”,aastringset”)## aa <-SearchDB(dbConn,tblName =” aa“,type =“ aastringset”)## browsedb(dbconn,tblname =“ aa”)## dbdisconnect(dbconn)#########################################################################################树## gt < - lapply(order(width(dna),depesing = true),## function(x){## attr(x,“ height”)<-0 ## attr(x,x,“ label”)在“)<-0.5 ## attr(gt,“构件”)< - 长度(DNA)## class(gt)< - “ dendragram” ## ## ###使用指南树作为对齐## dna <-的输入AlignTranslation(DNA,## Guidetree = GT,## Iterations = 0,## Repinement = 0)################################################################ ###代码块编号10:expr8(eval = false)#####################################################################################代码块编号11:expr9(eval = false)######################################################## ## DNA_adjusted <- AdjustAlignment(DNA) ################################################### ### code chunk number 12: expr10 (eval = FALSE) ################################################### ## DNA_staggered <- StaggerAlignment(DNA) ################################################### ### code chunk number 13: expr11 ################################################### db <- system.file("extdata", "Influenza.sqlite", package="DECIPHER") synteny <- FindSynteny(db, verbose=FALSE) synteny # an object of class `Synteny` InfluenzaA <- AlignSynteny(synteny, db, verbose=FALSE) unlist(InfluenzaA[[1]]) ################################################### ### code chunk number 14: expr12 ################################################### pairs(synteny, boxBlocks=TRUE) # scatterplot matrix ################################################### ### code chunk number 15: sessinfo ################################################### toLatex(sessionInfo(), locale=FALSE)