此篇文章主要是給大家介紹了python合拼RepeatMasker預(yù)測(cè)分析效果中染色體的overlap區(qū)域完成實(shí)例分析,感興趣的小伙伴可以參考參考一下,希望可以有一定的幫助,祝愿大家多多的發(fā)展,盡早工作上得到晉升
序言
RepeatMasker是一種根據(jù)已經(jīng)有數(shù)據(jù)庫(kù)系統(tǒng)預(yù)測(cè)分析重復(fù)序列的app,能夠挑選DNA序列里的散在重復(fù)序列和高繁雜編碼序列,是重復(fù)序列注解的主要手機(jī)軟件。
難題
大家想跟RepeatMasker預(yù)測(cè)效果文檔開展重復(fù)序列的合拼,其實(shí)就是清除性染色體間的overlap區(qū)域并將遺傳基因間隔低于50個(gè)bc的也是一樣視作overlap,大家該如何用python解決并形成一個(gè)新的預(yù)測(cè)分析效果?
構(gòu)思
首先要對(duì)文檔開展預(yù)備處理獲取出需要解決的列,'//'可以忽略不計(jì)
對(duì)同樣性染色體編碼序列依照降序開展歸并排序
各自取相對(duì)應(yīng)性染色體依照滑動(dòng)窗口思路開展雙指針核對(duì),留意gap=50
1.預(yù)處理
我們這里只需要結(jié)果文件的前三列,可以使用awk命令獲取
awk'{for(i=1;i<=3;i++) printf("%s",$i); printf("n")}'result.txt>pretreatment.txt #result.txt為結(jié)果文件,pretreatment.txt為預(yù)處理結(jié)果文件
2.將pretreatment.txt作為輸入文件,
with open('pretreatment.txt','r')as f: for i in f.readlines(): if i.strip()=='//': continue c=i.strip().split('t') b.append(c[0]) a.append((c[0],int(c[1]),int(c[2]))) print("全部染色體數(shù)量:"+str(len(a)))
3.去重+歸并排序
c=[i for i in b_set if b.count(i)==1] for i in a: if i[0]not in c: continue a.remove(i) result.append((i[0],int(i[1]),int(i[2]))) print("去重后染色體數(shù)量:"+str(len(a))) a.sort(key=lambda x:(x[0],x[1],x[2])) #按照第一列,第二列,第三列分別排降升序
4.開始比對(duì),gap=50
q='' start=0 end=0 tem1=[] tem2=[] gap=50 for i in a: if i[0]!=q: if tem1: if tem1 not in tem2: tem2.append(tem1) tem1=[] q=I[0] start=int(i[1]) end=int(i[2]) continue if int(i[1])<end or int(i[1])-end<gap: if int(i[2])>end: end=int(i[2]) continue else: continue tem1.append([q,start,end]) start=int(i[1]) end=int(i[2])
5.將new_result.txt作為輸出文件,生成結(jié)果
with open('new_result.txt','w')as f: for i in tem2: for o in I: print(o[0],o[1],o[2],file=f) for i in result: print(i[0],i[1],i[2],file=f)
6.完整代碼
a=[] b=[] with open('pretreatment.txt','r')as f: for i in f.readlines(): if i.strip()=='//': continue c=i.strip().split('t') b.append(c[0]) a.append((c[0],int(c[1]),int(c[2]))) print("全部染色體數(shù)量:"+str(len(a))) b_set=set(b) result=[] c=[i for i in b_set if b.count(i)==1] for i in a: if i[0]not in c: continue a.remove(i) result.append((i[0],int(i[1]),int(i[2]))) print("去重后染色體數(shù)量:"+str(len(a))) a.sort(key=lambda x:(x[0],x[1],x[2])) q='' start=0 end=0 tem1=[] tem2=[] gap=50 for i in a: if i[0]!=q: if tem1: if tem1 not in tem2: tem2.append(tem1) tem1=[] q=I[0] start=int(i[1]) end=int(i[2]) continue if int(i[1])<end or int(i[1])-end<gap: if int(i[2])>end: end=int(i[2]) continue else: continue tem1.append([q,start,end]) start=int(i[1]) end=int(i[2]) with open('new_result.txt','w')as f: for i in tem2: for o in I: print(o[0],o[1],o[2],file=f) for i in result: print(i[0],i[1],i[2],file=f)
以上就是小編給大家總結(jié)的全部知識(shí)了,希望可以給大家?guī)?lái)幫助。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/128698.html
摘要:項(xiàng)目代碼下載地址基于共現(xiàn)提取釜山行人物關(guān)系更多經(jīng)典項(xiàng)目全部項(xiàng)目 項(xiàng)目簡(jiǎn)介:本項(xiàng)目將帶大家使用 Python 提取《釜山行》人物關(guān)系,對(duì)于給定的劇本文本,通過(guò)分析文本中人物的共現(xiàn)關(guān)系,提取整個(gè)文本表示的人物關(guān)系,并將人物關(guān)系可視化表示。本項(xiàng)目教程由Forec發(fā)布在實(shí)驗(yàn)樓。 一、項(xiàng)目介紹 1. 內(nèi)容簡(jiǎn)介 《釜山行》是一部喪尸災(zāi)難片,其人物少、關(guān)系簡(jiǎn)單,非常適合我們學(xué)習(xí)文本處理。這個(gè)項(xiàng)目將介...
摘要:折交叉驗(yàn)證集,每折包含約張訓(xùn)練圖像和張測(cè)試圖像,正樣本邊界負(fù)樣本其他負(fù)樣本,訓(xùn)練集中共圖像塊。浸潤(rùn)性導(dǎo)管癌是乳腺癌中最長(zhǎng)出現(xiàn)的亞種。 Deep learning for digital pathology image analysis: A comprehensive tutorial with selected use cases Deep learning for digital ...
摘要:在低版本的里,需染色圖標(biāo)如果是在有滾動(dòng)條的區(qū)域內(nèi),會(huì)染色不了。這時(shí)需要在滾動(dòng)區(qū)域加屬性總結(jié)如果有需要染色圖標(biāo),做成字體圖標(biāo)好些。 之前一直以為用background引入的圖標(biāo)無(wú)法染色(非字體圖標(biāo)),現(xiàn)在才知道有黑科技可以用,就是利用drop-shadow。 代碼示例 DOCTYPE html> .face1{ displ...
摘要:從數(shù)學(xué)博士到阿里云工程師,夏分一直學(xué)以致用。入職后的第個(gè)月,夏分接手了第一個(gè)項(xiàng)目,用工業(yè)大腦幫一家風(fēng)電企業(yè)提前預(yù)測(cè)風(fēng)電機(jī)組故障。一個(gè)萬(wàn)千瓦的風(fēng)電場(chǎng),平均每年維護(hù)費(fèi)用高達(dá)萬(wàn)元,還會(huì)以平均的速率逐年遞增。 從數(shù)學(xué)博士到阿里云工程師,夏分一直學(xué)以致用。加入阿里云接手的第一個(gè)ET工業(yè)大腦項(xiàng)目,因?yàn)閿?shù)據(jù)傳輸問(wèn)題丟失大量數(shù)據(jù),導(dǎo)致機(jī)器誤判拉響警報(bào),這讓他意識(shí)到自己不能只坐在電腦前做碼農(nóng),也要下到車...
摘要:在一個(gè)數(shù)據(jù)分析任務(wù)和任務(wù)混合的環(huán)境中,大數(shù)據(jù)分析任務(wù)也會(huì)消耗很多網(wǎng)絡(luò)帶寬如操作,網(wǎng)絡(luò)延遲會(huì)更加嚴(yán)重。本地更新更新更新目前,我們已經(jīng)復(fù)現(xiàn)中的實(shí)驗(yàn)結(jié)果,實(shí)現(xiàn)了多機(jī)并行的線性加速。 王佐,天數(shù)潤(rùn)科深度學(xué)習(xí)平臺(tái)負(fù)責(zé)人,曾擔(dān)任 Intel亞太研發(fā)中心Team Leader,萬(wàn)達(dá)人工智能研究院資深研究員,長(zhǎng)期從事分布式計(jì)算系統(tǒng)研究,在大規(guī)模分布式機(jī)器學(xué)習(xí)系統(tǒng)架構(gòu)、機(jī)器學(xué)習(xí)算法設(shè)計(jì)和應(yīng)用方面有深厚積累。在...
閱讀 911·2023-01-14 11:38
閱讀 878·2023-01-14 11:04
閱讀 740·2023-01-14 10:48
閱讀 1982·2023-01-14 10:34
閱讀 942·2023-01-14 10:24
閱讀 819·2023-01-14 10:18
閱讀 499·2023-01-14 10:09
閱讀 572·2023-01-14 10:02