前言
生信中達(dá)到某一個目的有很多方法,如果我是一個小白,我會首先想一下自己該怎么解決,再搜索有沒有相同的問題,或者記錄自己的問題。
遇到別人的經(jīng)驗貼就記錄下來,不同的方法解決同一個問題,最后,等到我積累足夠多的經(jīng)驗就知道那一種最適合我。
要敢于嘗試和比較不同的方法,要力求一次達(dá)到目的?。。?br> 今天翻以前看別人的筆記,突然想吐槽~
還有后續(xù),懶得記錄啦~
記?。毫_馬不是一天建成的~
情景一:計算染色體長度
1.獲取染色體長度(基因家族分析需要):這是我在公眾號看到的方法,兩步~既然有這么優(yōu)秀的軟件,就不要給自己找麻煩啦
pengzw@super-server:~/reference/watermelon$ samtools faidx watermelon_v1.genome
pengzw@super-server:~/reference/watermelon$ awk '{print $1"\t"$2}' watermelon_v1.genome.fai |head
Chr1 34083085
Chr2 34414252
Chr3 28939167
Chr4 24315960
Chr5 33714806
Chr6 27018480
Chr7 31477646
Chr8 26149438
Chr9 34986854
Chr10 28419553
2.某次看到的方法(伏筆人設(shè),詳見我的總結(jié)帖):一個個計算,要是有一百條也是爽歪歪
pengzw@super-server:~/reference/watermelon$ sed -n 2p watermelon_v1.genome |wc
1 1 34083086
pengzw@super-server:~/reference/watermelon$ sed -n 4p watermelon_v1.genome |wc
1 1 34414253
pengzw@super-server:~/reference/watermelon$ awk 'NR==2 { print $0 }' watermelon_v1.genome |wc
1 1 34083086
pengzw@super-server:~/reference/watermelon$ awk 'NR==4 { print $0 }' watermelon_v1.genome |wc
1 1 34414253
情景二:得到bed文件
1.我利用awk的提取方法,我以前覺得gft、gff3的文件格式很復(fù)雜,現(xiàn)在看覺得是很有規(guī)律啦~
pengzw@super-server:~/reference/phytozome/at$ awk -F "[= \t]" '$3 == "gene" {print$1"\t"$4"\t"$5"\t"$11}' Athaliana_167_TAIR10.gene.gff3|head -n 5
Chr1 3631 5899 AT1G01010
Chr1 5928 8737 AT1G01020
Chr1 11649 13714 AT1G01030
Chr1 23146 31227 AT1G01040
Chr1 31170 33153 AT1G01050
2.一言難盡的方法,我實在是沒耐心解讀~genefamily.bed
pengzw@super-server:~$ genefamily = sorted.myb
pengzw@super-server:~$sort $genefamily | join -t $ '\t' -o 1.1 1.2 1.3 1.4 1.5 1.6 -1 4 -2 1 clpromoter.gff - | sort --version -sort > $genefamily.bed
學(xué)習(xí)心得
我也遇到很多坑,但是我從來不會做伸手黨,被坑了,下一次我只會找更多更好的方法解決同一個問題,不論問題多么簡單。
不要以為自己的命令行多復(fù)雜就顯得自己多厲害,呵呵呵呵,伏筆人設(shè)的垃圾作為~我生信學(xué)習(xí)路上的遇到的自視甚高的人~
廢話那么多,就是想說見多識廣,不要被局限在一個小框框里。