DU2:如何準確獲取基因的某個保守區(qū)域序列

需要解決的問題:

準確獲取基因X的某個保守區(qū)域H的蛋白序列及核酸序列雾叭,查看該段序列蛋白層面及核酸層面的變化情況落蝙。

分析:

需要獲取的基因X的某個保守區(qū)域序列H中有幾個氨基酸非常保守暂幼,先進行序列比對,定位該段保守序列旺嬉,提取該段序列,考慮到取到的序列中含有g(shù)ap的情況捐顷,需要將獲取的序列(去除“-”)重新在物種W的蛋白序列中定位再次提取雨效,保證氨基酸數(shù)目的一致;定位得到的蛋白序列起始終止位置的坐標(biāo)乘以3即得到核酸序列的坐標(biāo)信息徽龟,從物種W的CDS序列文件中提取該保守區(qū)段H的核酸序列。

解決方案:

1传透、使用muscle將基因X的蛋白序列進行比對极颓,并在Jalview中進行可視化

muscle -in W-X.fas -out W-X.fas.aln -maxiters 1000
基因X序列比對

序列過長過短都會造成比對結(jié)果中產(chǎn)生gap,手動查看并刪除造成很長gap的序列兵琳;
Ctrl+F定位該保守區(qū)段在比對文件中的位置,如上圖確認PGRTDN出現(xiàn)的起始位置為123闰围;
在Jalview中導(dǎo)出篩選之后的序列比對文件。
防止出錯碧查,去除比對文件的換行符

awk '!/^>/ { printf "%s", $0; n = "\n" } /^>/ { print n $0; n = "" } END { printf "%s", n } ' W_X_filter_aln.fas.aln > W_X_filter_aln.fas.aln.nochangeline

2校仑、寫腳本從aln比對文件中按保守區(qū)域H的比對起始終止位置提取序列并去除gap(18個氨基酸)

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import re
File = sys.argv[1]
input_file = open(File,'r')
start = input("請輸入保守區(qū)域的起始位置:")
end = int(start) + 18
prefix = sys.argv[1].split(".")[0]
output_file = open ('%s_H.pep'%(prefix), 'w')
for line in input_file:
    line = line.rstrip()
    if not line: break
    if '>' in line:
        print(line,file = output_file)
    else:
        line = line[int(start):int(end)]
        if "-" in line:
            line = line.replace("-", "")
            print(line,file = output_file)
        else:
            print(line,file = output_file)
input_file.close()
output_file.close()

#運行命令
python extract_H_pepseq.py W_X_filter_aln.fas.aln.nochangeline
請輸入保守區(qū)域的起始位置:123

輸出文件為W_X_filter_aln_H.pep

3、從比對文件中提取的序列可能有g(shù)ap迄沫,因此可能不足18個氨基酸,因此需要在原始蛋白序列文件中重新提取保證所有保守區(qū)域都是提取出18個氨基酸泰佳;
用腳本確定這些保守序列在原始蛋白序列中的起始終止位置

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import re
File1 = sys.argv[1]
File2 = sys.argv[2]
input_file1 = open(File1,'r')
input_file2 = open(File2,'r')
prefix = sys.argv[2].split(".")[0]
output_file1 = open ('%s.peppos'%(prefix), 'w')
output_file2 = open ('%s.CDSpos'%(prefix), 'w')
Dict1 = dict()
Dict2 = dict()
for line1 in input_file1:
    line1 = line1.rstrip()
    if not line1: break
    if '>' in line1:
        idline1 = line1
    else:
        Dict1[idline1] = line1
for line2 in input_file2:
    line2 = line2.rstrip()
    if not line2:break  
    if '>' in line2:
        idline2 = line2
    else:
        Dict2[idline2] = line2
for key2,value2 in Dict2.items():
    for key1,value1 in Dict1.items():
        if key2 == key1:
            start = int(value1.find(value2)) + 1
            end = int(start) + 17
            print(key2.replace(">",""),start,end,file = output_file1)
            print(key2.replace(">",""),int(start)*3,int(end)*3+3,file = output_file2)
input_file1.close()
input_file2.close()
output_file1.close()
output_file2.close()

#運行命令
python find_Hpep_pos.py ../W.pep W_X_filter_aln_H.pep

輸出文件為W_X_filter_aln_H.peppos和W_X_filter_aln_H.CDSpos
輸出文件的格式如下:
<ID號> <起始位置> <終止位置>

** 4逝她、以上準備工作做完后用TBtools提取序列并出seqlogo圖**
用TBtools提取序列

java -cp TBtools_JRE1.6.jar biocjava.bioIO.FastX.FastaIndex.SeqExtracterAccordingFAindex --inFA ../W.pep --regionList W_X_filter_aln_H.peppos --outFA W_X_H.pep
java -cp TBtools_JRE1.6.jar biocjava.bioIO.FastX.FastaIndex.SeqExtracterAccordingFAindex --inFA ../W.CDS --regionList W_X_filter_aln_H.CDSpos --outFA W_X_H.CDS

用TBtools出seqlogo圖

java -cp TBtools_JRE1.6.jar biocjava.bioDoer.seqLogo.makeSeqLogo --inFile W_X_H.pep --borderSize 5 --borderColor 0,0,0 --scaleIC true --OutGraph W_X_H.pep.png
java -cp TBtools_JRE1.6.jar biocjava.bioDoer.seqLogo.makeSeqLogo --inFile W_X_H.CDS --borderSize 5 --borderColor 0,0,0 --scaleIC true --OutGraph W_X_H.CDS.png

完成2谴贰!擒贸!

H蛋白序列

H核酸序列

5介劫、TBtools新工具makeSeqLogo命令行介紹
Usage

--inFile 必選,輸入文件寂曹,可以是一行一條序列也可以是fasta格式文件
--scaleIC 可選回右,默認為false,改為true會使得保守位點更加明顯
--OutGraph 必選翔烁,出圖,文件后綴決定格式如.png或.pdf
--showPos 可選蹬屹,默認為false白华,seqlogo下方不顯示consensus序列贩耐,而顯示位置信息
--startPos 可選,默認為1管搪,位置的起始坐標(biāo)
--borderColor 可選铡买,默認為255,255,255 白色更鲁,邊框的顏色
--borderSize 可選奇钞,默認為2,邊框線條的粗細
--onlyBorder 可選媒至,默認為false谷徙,改為true則只顯示邊框,不填充顏色
--xInterval 可選蒂胞,默認為1条篷,改變x軸的間距
--yInterval 可選,默認為1赴叹,改變y軸的間距
不選擇 --scaleIC的變化如下:

java -cp TBtools_JRE1.6.jar biocjava.bioDoer.seqLogo.makeSeqLogo --inFile W_X_H.pep --borderSize 5 --borderColor 0,0,0 --OutGraph W_X_H.pep1.png
--scaleIC false

選擇 --onlyBorder的變化如下:

java -cp TBtools_JRE1.6.jar biocjava.bioDoer.seqLogo.makeSeqLogo --inFile W_X_H.pep --borderSize 5 --borderColor 0,0,0 --scaleIC true --onlyBorder true --OutGraph W_X_H.pep2.png
--onlyBorder true

改變x軸和y軸的間距

java -cp TBtools_JRE1.6.jar biocjava.bioDoer.seqLogo.makeSeqLogo --inFile W_X_H.pep --borderSize 5 --borderColor 0,0,0 --scaleIC true --xInterval 5 --yInterval 5 --OutGraph W_X_H.pep3.png
間距1--5
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末涨椒,一起剝皮案震驚了整個濱河市绽媒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌是辕,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件旁蔼,死亡現(xiàn)場離奇詭異,居然都是意外死亡棺聊,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門葵诈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來犀暑,“玉大人,你說我怎么就攤上這事耐亏。” “怎么了暇矫?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵择吊,是天一觀的道長。 經(jīng)常有香客問我几睛,道長,這世上最難降的妖魔是什么囱持? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任焕济,我火速辦了婚禮,結(jié)果婚禮上晴弃,老公的妹妹穿的比我還像新娘。我一直安慰自己上鞠,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布枯怖。 她就那樣靜靜地躺著能曾,像睡著了一般肿轨。 火紅的嫁衣襯著肌膚如雪蕊程。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天藻茂,我揣著相機與錄音,去河邊找鬼优俘。 笑死,一個胖子當(dāng)著我的面吹牛帆焕,可吹牛的內(nèi)容都是我干的不恭。 我是一名探鬼主播叶雹,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼折晦,長吁一口氣:“原來是場噩夢啊……” “哼沾瓦!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起贯莺,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后透且,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡鲸沮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年锅论,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片最易。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡炫狱,死狀恐怖剔猿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情归敬,我是刑警寧澤酷含,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布汪茧,位于F島的核電站,受9級特大地震影響呀舔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜别威,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一驴剔、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧丧失,春花似錦、人聲如沸布讹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽膘流。三九已至,卻和暖如春呼股,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背彭谁。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留则奥,地道東北人。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓额划,卻偏偏與公主長得像档泽,于是被迫代替她去往敵國和親俊戳。 傳聞我的和親對象是個殘疾皇子馆匿,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,722評論 2 345