[Python]如何做基因體序列反轉互補

更新 發佈閱讀 4 分鐘


raw-image


另外站長打個廣告,最近站長正在嘗試經營遊戲直播平台希望大家能夠幫忙追隨訂閱一下,站長真心感謝~

TWITCH直播: https://www.twitch.tv/saioyan

Youtube: https://www.youtube.com/channel/UCtCeeanvsVdAuqNUyt91GXw/about

[Python]如何做基因體序列反轉互補

關鍵字:基因體序列、反轉、互補、IUPAC、for迴圈、字典dict、函數def

今天假設拿到一小段基因體序列"ATCCTTTCCATTATT",我們應該要如何將序列做反轉和互補的動作呢?

以下就直接以程式碼呈現,將功能寫入函數中再輸入一段序列後產出反轉互補序列


seq = 'ATCCTTTCCATTATT'

print(seq,'初始序列')

def reverse_complement(seq):

    seq=seq.upper()

    complement = {'A': 'T', 'C': 'G', 'G': 'C', 'T': 'A', 'K':'M','M':'K','R':'Y','Y':'R','S':'W','W':'W','B':'V','V':'B','H':'G','D':'C','X':'N','N':'N'}

    bases = list(seq)

    bases = bases[::-1]

    rc=[complement.get(base) for base in bases]

    bases = ''.join(rc)

    return bases

print(reverse_complement(seq),'反轉互補')




seq = 'ATCCTTTCCATTATT'是我們設定的初始序列


seq=seq.upper()是轉換字串裡的字元為大寫

complement是互補對應表,使用字典的key和value紀錄待轉換字元以及轉換後的字元,除了'A','T','C','G'以外的字是IUPAC CODE

bases = list(seq)是將字串轉換為清單,比如ATCC=>['A','T','C','C']

bases = bases[::-1]是將清單內的元素反過來讀取,比如['A','T','C','C']=>['C','C','T','A']

rc=[complement.get(base) for base in bases]是用圈將每個序列的字元進行互補轉換

bases = ''.join(rc)是重新將清單合併為字串

return bases是回傳參數到reverse_complement(seq)印出反轉互補序列

raw-image


以上如何做基因體序列反轉互補介紹到這邊 ,其他Python教學可以參考以下網址,歡迎大家參考!!!

[Python] Python學習總集

本網站https://kk665403.pixnet.net/內之全部圖文,Saioyan梟夜所有,非經本人同意不得將全部或部分內容轉載於任何形式之媒體
Copyright © 2021 Saioyan. All rights reserved.
版權所有© 2021 Saioyan梟夜

留言
avatar-img
Saioyan的沙龍
35會員
919內容數
贊助我 https://vocus.cc/pay/donate/@kk665403?donateSourceType=exclusiveLink
Saioyan的沙龍的其他內容
2020/06/22
另外站長打個廣告,最近站長正在嘗試經營遊戲直播平台希望大家能夠幫忙追隨訂閱一下,站長真心感謝~ TWITCH直播: https://www.twitch.tv/saioyan Youtube: https://www.youtube.com/channel/UCtCeeanvsVdAuqNU
Thumbnail
2020/06/22
另外站長打個廣告,最近站長正在嘗試經營遊戲直播平台希望大家能夠幫忙追隨訂閱一下,站長真心感謝~ TWITCH直播: https://www.twitch.tv/saioyan Youtube: https://www.youtube.com/channel/UCtCeeanvsVdAuqNU
Thumbnail
2019/05/27
另外站長打個廣告,最近站長正在嘗試經營遊戲直播平台希望大家能夠幫忙追隨訂閱一下,站長真心感謝~ TWITCH直播: https://www.twitch.tv/saioyan Youtube: https://www.youtube.com/channel/UCtCeeanvsVdAuqNU
Thumbnail
2019/05/27
另外站長打個廣告,最近站長正在嘗試經營遊戲直播平台希望大家能夠幫忙追隨訂閱一下,站長真心感謝~ TWITCH直播: https://www.twitch.tv/saioyan Youtube: https://www.youtube.com/channel/UCtCeeanvsVdAuqNU
Thumbnail
2019/05/27
另外站長打個廣告,最近站長正在嘗試經營遊戲直播平台希望大家能夠幫忙追隨訂閱一下,站長真心感謝~ TWITCH直播: https://www.twitch.tv/saioyan Youtube: https://www.youtube.com/channel/UCtCeeanvsVdAuqNU
Thumbnail
2019/05/27
另外站長打個廣告,最近站長正在嘗試經營遊戲直播平台希望大家能夠幫忙追隨訂閱一下,站長真心感謝~ TWITCH直播: https://www.twitch.tv/saioyan Youtube: https://www.youtube.com/channel/UCtCeeanvsVdAuqNU
Thumbnail
看更多
你可能也想看
Thumbnail
賽勒布倫尼科夫以流亡處境回望蘇聯電影導演帕拉贊諾夫的舞台作品,以十段寓言式殘篇,重新拼貼記憶、暴力與美學,並將審查、政治犯、戰爭陰影與「形式即政治」的劇場傳統推到台前。本文聚焦於《傳奇:帕拉贊諾夫的十段殘篇》的舞台美術、音樂與多重扮演策略,嘗試解析極權底下不可言說之事,將如何成為可被觀看的公共發聲。
Thumbnail
賽勒布倫尼科夫以流亡處境回望蘇聯電影導演帕拉贊諾夫的舞台作品,以十段寓言式殘篇,重新拼貼記憶、暴力與美學,並將審查、政治犯、戰爭陰影與「形式即政治」的劇場傳統推到台前。本文聚焦於《傳奇:帕拉贊諾夫的十段殘篇》的舞台美術、音樂與多重扮演策略,嘗試解析極權底下不可言說之事,將如何成為可被觀看的公共發聲。
Thumbnail
柏林劇團在 2026 北藝嚴選,再次帶來由布萊希特改編的經典劇目《三便士歌劇》(The Threepenny Opera),導演巴里・柯斯基以舞台結構與舞台調度,重新向「疏離」進行提問。本文將從觀眾慾望作為戲劇內核,藉由沉浸與疏離的辯證,解析此作如何再次照見觀眾自身的位置。
Thumbnail
柏林劇團在 2026 北藝嚴選,再次帶來由布萊希特改編的經典劇目《三便士歌劇》(The Threepenny Opera),導演巴里・柯斯基以舞台結構與舞台調度,重新向「疏離」進行提問。本文將從觀眾慾望作為戲劇內核,藉由沉浸與疏離的辯證,解析此作如何再次照見觀眾自身的位置。
Thumbnail
本文深入解析臺灣劇團「晃晃跨幅町」對易卜生經典劇作《海妲.蓋柏樂》的詮釋,從劇本歷史、聲響與舞臺設計,到演員的主體創作方法,探討此版本如何讓經典劇作在當代劇場語境下煥發新生,滿足現代觀眾的觀看慾望。
Thumbnail
本文深入解析臺灣劇團「晃晃跨幅町」對易卜生經典劇作《海妲.蓋柏樂》的詮釋,從劇本歷史、聲響與舞臺設計,到演員的主體創作方法,探討此版本如何讓經典劇作在當代劇場語境下煥發新生,滿足現代觀眾的觀看慾望。
Thumbnail
《轉轉生》為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,融合舞蹈、音樂、時尚和視覺藝術,透過身體、服裝與群舞結構,回應殖民歷史、城市經驗與祖靈記憶的交錯。本文將從服裝設計、身體語彙與「輪迴」的「誕生—死亡—重生」結構出發,分析《轉轉生》如何以當代目光,形塑去殖民視角的奈及利亞歷史。
Thumbnail
《轉轉生》為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,融合舞蹈、音樂、時尚和視覺藝術,透過身體、服裝與群舞結構,回應殖民歷史、城市經驗與祖靈記憶的交錯。本文將從服裝設計、身體語彙與「輪迴」的「誕生—死亡—重生」結構出發,分析《轉轉生》如何以當代目光,形塑去殖民視角的奈及利亞歷史。
Thumbnail
本文探討會計數位轉型中,利用 Excel VBA 和 Python 自動化重複性結帳流程,提高工作效率。介紹 VBA 處理 Excel 表格操作、資料清洗與報表生成,以及 Python 在大數據、跨系統整合與進階財務分析的應用。提供會計人員的數位轉型行動指南,從入門到精通,並解答常見疑問。
Thumbnail
本文探討會計數位轉型中,利用 Excel VBA 和 Python 自動化重複性結帳流程,提高工作效率。介紹 VBA 處理 Excel 表格操作、資料清洗與報表生成,以及 Python 在大數據、跨系統整合與進階財務分析的應用。提供會計人員的數位轉型行動指南,從入門到精通,並解答常見疑問。
Thumbnail
一個被蚊子激怒的夏夜,催生了我人生第一個程式專案!本文紀錄一個程式新手,如何靠著一股怨氣與勇氣,用Python打造出懷舊的「滅蚊大進擊」遊戲。分享從零到一的真實挑戰、充滿血淚的學習心得,以及最終戰勝BUG的喜悅。
Thumbnail
一個被蚊子激怒的夏夜,催生了我人生第一個程式專案!本文紀錄一個程式新手,如何靠著一股怨氣與勇氣,用Python打造出懷舊的「滅蚊大進擊」遊戲。分享從零到一的真實挑戰、充滿血淚的學習心得,以及最終戰勝BUG的喜悅。
Thumbnail
這篇文章分享如何藉由網頁應用程式開發平台Bolt的AI助手,不用自己寫程式,也能製作出一個蒸汽龐克風格的角色扮演網頁小遊戲,讓玩家透過收集機器零件的過程,逐漸認識Astroquery這個能取得天文觀測資料的Python工具。
Thumbnail
這篇文章分享如何藉由網頁應用程式開發平台Bolt的AI助手,不用自己寫程式,也能製作出一個蒸汽龐克風格的角色扮演網頁小遊戲,讓玩家透過收集機器零件的過程,逐漸認識Astroquery這個能取得天文觀測資料的Python工具。
Thumbnail
如何用Python做可調整是否能重複抽獎的程式
Thumbnail
如何用Python做可調整是否能重複抽獎的程式
Thumbnail
在前一篇我們已經成功地建立簽核表單及簽核節點並關聯回請假表單,而本篇會接著介紹如何管理簽核節點狀態並同步更新簽核表單狀態。
Thumbnail
在前一篇我們已經成功地建立簽核表單及簽核節點並關聯回請假表單,而本篇會接著介紹如何管理簽核節點狀態並同步更新簽核表單狀態。
Thumbnail
什麼是Python python是電腦程式語言的一種,如同python官方網站上的介紹 "Python是一種程式語,可讓你更快速地工作並更有效的整合系統"。簡單地說,就是你可用python這個程式語言去告訴電腦你想要作什麼,讓電腦來幫你完成你要作的事情。
Thumbnail
什麼是Python python是電腦程式語言的一種,如同python官方網站上的介紹 "Python是一種程式語,可讓你更快速地工作並更有效的整合系統"。簡單地說,就是你可用python這個程式語言去告訴電腦你想要作什麼,讓電腦來幫你完成你要作的事情。
Thumbnail
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
Thumbnail
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
Thumbnail
如何用Python為某欄做分類,例如:判斷分數是否及格 
Thumbnail
如何用Python為某欄做分類,例如:判斷分數是否及格 
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News