操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    今天是生信星球陪你的第439天

    大神一句話,菜鳥跑半年。我不是大神,但我可以縮短你走彎路的半年~

    就像歌兒唱的那樣,如果你不知道該往哪兒走,就留在這學點生信好不好~

    這里有豆豆和花花的學習歷程,從新手到進階,生信路上有你有我!

    本來只是想展示一下apply結合自定義函數的應用,結果越寫越多,跑題了

    。不過,小技巧還是很好玩的,值得一學~今天雨特別大,開車門時發生了剮蹭,蹭的還是個寶馬。豆豆先生開始辦去澳門的各種手續,老板三個月前發給我的獎金(現金)也終于存進了銀行。。。混亂的一天。

    大于電腦怎么輸_電腦上怎么輸入大于號_大于號電腦怎么輸入

    電腦上怎么輸入大于號_大于電腦怎么輸_大于號電腦怎么輸入

    1.生成一組示例序列

    先生成一條序列,并且把生成序列的代碼寫成個函數,函數的輸入數據是序列的長度:

    x=?c("A","T","C","G")
    ms?<-function(n){
    ??paste(sample(x,n,replace?=?TRUE),collapse?=?"")
    }?
    ms(25)
    #>?[1]?"AAAGGTAGGTGTTGTAGAACTATGT"

    然后生成一組示例數據,例子是10個序列,每個長度25:

    知識點一:用sample和paste0生成隨機字符串

    paste0和sample都是基礎函數,但是用處很大,sample表示抽樣,加上replace = TRUE就是有放回的抽樣,paste0則表示將結果無縫連接起來,這不就成了個序列嘛~

    知識點二:

    用數據結構(例如向量/列表)儲存for循環多次產生的結果,這些結果成為向量/列表里的元素。

    y?=?c()
    for(i?in?1:10){
    ??y[[i]]?=?ms(25)
    }
    y
    #>??[1]?"GACCGCCTTATAGCAGTTAGTGTAG"?"GGAAGCGTCATTCGAACTATGCCGG"
    #>??[3]?"AACAGTTCCGTCCACTTGGCCATTG"?"TACCGCCTTTGTTAGCCGTGTGGCT"
    #>??[5]?"ATCTCCAGACTTTATAAATCTATCA"?"GTGTGGTATTATCGTGATCTCCACG"
    #>??[7]?"GAGCACAGACGCGCTAGAGAATTGA"?"GTTTTACACGCATCAGTGGGTAAAG"
    #>??[9]?"TGGCAGTGTCTCTCTAGCGTGATCT"?"AGGCCATGGGTTGGGAGTTACTTAT"

    如果你有真實的序列,直接用()讀進來,as.()變成字符串就好。

    2.把序列成fasta格式

    最簡單的fasta格式是第一行大于號加序列名稱,第二行是序列。

    把字符串序列變成fasta格式,可以這樣

    方法一

    x1?=?paste0("seq",1:10)
    res?<-?paste0(">",x1,"\n",y)
    res
    #>??[1]?">seq1\nGACCGCCTTATAGCAGTTAGTGTAG"?
    #>??[2]?">seq2\nGGAAGCGTCATTCGAACTATGCCGG"?
    #>??[3]?">seq3\nAACAGTTCCGTCCACTTGGCCATTG"?
    #>??[4]?">seq4\nTACCGCCTTTGTTAGCCGTGTGGCT"?
    #>??[5]?">seq5\nATCTCCAGACTTTATAAATCTATCA"?
    #>??[6]?">seq6\nGTGTGGTATTATCGTGATCTCCACG"?
    #>??[7]?">seq7\nGAGCACAGACGCGCTAGAGAATTGA"?
    #>??[8]?">seq8\nGTTTTACACGCATCAGTGGGTAAAG"?
    #>??[9]?">seq9\nTGGCAGTGTCTCTCTAGCGTGATCT"?
    #>?[10]?">seq10\nAGGCCATGGGTTGGGAGTTACTTAT"
    writeLines(res)
    #>?>seq1
    #>?GACCGCCTTATAGCAGTTAGTGTAG
    #>?>seq2
    #>?GGAAGCGTCATTCGAACTATGCCGG
    #>?>seq3
    #>?AACAGTTCCGTCCACTTGGCCATTG
    #>?>seq4
    #>?TACCGCCTTTGTTAGCCGTGTGGCT
    #>?>seq5
    #>?ATCTCCAGACTTTATAAATCTATCA
    #>?>seq6
    #>?GTGTGGTATTATCGTGATCTCCACG
    #>?>seq7
    #>?GAGCACAGACGCGCTAGAGAATTGA
    #>?>seq8
    #>?GTTTTACACGCATCAGTGGGTAAAG
    #>?>seq9
    #>?TGGCAGTGTCTCTCTAGCGTGATCT
    #>?>seq10
    #>?AGGCCATGGGTTGGGAGTTACTTAT

    知識點三:

    可以將字符串中的特殊符號"\n","\t"等顯示出來成為它本來的樣子。

    方法二

    (其實寫這一篇只是為了舉個例子說說apply(),結果跑偏了。)

    df?<-?data.frame(V1=paste0("seq",1:10),V2=y)

    res2?=?apply(df,1,function(x){
    ??paste0(">",x[1],"\n",x[2])
    })

    res2
    #>??[1]?">seq1\nGACCGCCTTATAGCAGTTAGTGTAG"?
    #>??[2]?">seq2\nGGAAGCGTCATTCGAACTATGCCGG"?
    #>??[3]?">seq3\nAACAGTTCCGTCCACTTGGCCATTG"?
    #>??[4]?">seq4\nTACCGCCTTTGTTAGCCGTGTGGCT"?
    #>??[5]?">seq5\nATCTCCAGACTTTATAAATCTATCA"?
    #>??[6]?">seq6\nGTGTGGTATTATCGTGATCTCCACG"?
    #>??[7]?">seq7\nGAGCACAGACGCGCTAGAGAATTGA"?
    #>??[8]?">seq8\nGTTTTACACGCATCAGTGGGTAAAG"?
    #>??[9]?">seq9\nTGGCAGTGTCTCTCTAGCGTGATCT"?
    #>?[10]?">seq10\nAGGCCATGGGTTGGGAGTTACTTAT"

    writeLines(res2)
    #>?>seq1
    #>?GACCGCCTTATAGCAGTTAGTGTAG
    #>?>seq2
    #>?GGAAGCGTCATTCGAACTATGCCGG
    #>?>seq3
    #>?AACAGTTCCGTCCACTTGGCCATTG
    #>?>seq4
    #>?TACCGCCTTTGTTAGCCGTGTGGCT
    #>?>seq5
    #>?ATCTCCAGACTTTATAAATCTATCA
    #>?>seq6
    #>?GTGTGGTATTATCGTGATCTCCACG
    #>?>seq7
    #>?GAGCACAGACGCGCTAGAGAATTGA
    #>?>seq8
    #>?GTTTTACACGCATCAGTGGGTAAAG
    #>?>seq9
    #>?TGGCAGTGTCTCTCTAGCGTGATCT
    #>?>seq10
    #>?AGGCCATGGGTTGGGAGTTACTTAT

    identical(res,res2)
    #>?[1]?TRUE

    電腦上怎么輸入大于號_大于號電腦怎么輸入_大于電腦怎么輸

    知識點四:

    apply(X, MARGIN, FUN, …)其中X是數據框/矩陣名;MARGIN為1表示取行,為2表示取列,FUN是函數。強大的apply配上自定義函數,可以做很多事情。

    判斷兩個變量是否完全相等,用(),不用 ==

    3.后續可以合并

    如果你需要合成一整個字符串,那也簡單。

    resl=paste(res,collapse?=?"\n")
    resl
    #?[1]?">seq1\nCCTGTCTAGTCCGAGATATGGTAAG\n>seq2\nATGTGAAGGAACACGCATGAAAAAG\n>seq3\nAGGGCTATCCGGGGAAGAAATTAGC\n>seq4\nACGCTATATCGCAGCATGTCTCTAG\n>seq5\nATCAGCCACGTCACAACGGTGGCAT\n>seq6\nACTACTACTGCTAAAGTAGGCTGCT\n>seq7\nGGTTCCATTGTATGACATAACAAAC\n>seq8\nTGACAGAACGAAGTCATGATACCGA\n>seq9\nATTTGCCTGTGTCCTCGAGAGTAGT\n>seq10\nCTCTCAGCGACGGGCGGTGAAAGCT"

    writeLines(resl)
    #>?>seq1
    #>?GACCGCCTTATAGCAGTTAGTGTAG
    #>?>seq2
    #>?GGAAGCGTCATTCGAACTATGCCGG
    #>?>seq3
    #>?AACAGTTCCGTCCACTTGGCCATTG
    #>?>seq4
    #>?TACCGCCTTTGTTAGCCGTGTGGCT
    #>?>seq5
    #>?ATCTCCAGACTTTATAAATCTATCA
    #>?>seq6
    #>?GTGTGGTATTATCGTGATCTCCACG
    #>?>seq7
    #>?GAGCACAGACGCGCTAGAGAATTGA
    #>?>seq8
    #>?GTTTTACACGCATCAGTGGGTAAAG
    #>?>seq9
    #>?TGGCAGTGTCTCTCTAGCGTGATCT
    #>?>seq10
    #>?AGGCCATGGGTTGGGAGTTACTTAT

    還可以導出

    write.table(resl,
    ????????????file?=?"test.fasta",
    ????????????row.names?=?F,
    ????????????quote?=?F)

    知識點五:

    字符串也可以導出的。想要讓導出的文件沒引號,就加quote = F,導出文件后綴可以改,改成fasta沒關系的,因為是純文本,后綴不改變本質,只是決定了這文件在window電腦上的默認打開方式而已。

    向大家隆重推薦隔壁生信技能樹的一系列干貨!

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有