Python如何用字典完成匹配任務
更新時間:2024年09月13日 09:34:18 作者:小豬崽子~
在生物信息學領域,經常需要根據(jù)基因名稱匹配其對應的編號,本文介紹了一種通過字典進行基因名稱與編號匹配的方法,首先定義一個空列表存儲對應編號,對于字典中不存在的基因名稱,其編號默認為0
1. 問題描述
如下左圖為編號與gene名稱的對應關系(此處僅顯示前10條),已存為字典(map_gene)
右圖為我們需要去匹配的gene名稱,如何根據(jù)基因名稱給出對應的編號?


2. 解決方案
2.1 定義變量
首先,我們定義一個空的list來存儲gene對應的編號,且因部分gene在字典map_gene中不存在,故需記錄可匹配到的個數(shù)。
# 定義變量 m = [] # 存儲對應編號的list t = 0 # 記錄map_gene中可以匹配到的gene個數(shù) n = 0 # 記錄map_gene中不存在的gene個數(shù)
2.2 匹配gene對應的編號
# 遍歷gene列表,若在map_gene中可匹配到,則保存對應編號;否則返回0.
for i in range(len(gene)):
if gene[i] in map_gene.keys():
m.append(map_gene[gene[i]])
t = t+1
else:
m.append(0)
n = n+12.3 將匹配好的結果導出存為csv格式
# 導出到csv
data = np.vstack(gene,m)
df = pd.DataFrame(data)
df.to_csv('gene_match.csv')csv文檔截圖如下,僅選取0-20gene展示結果,其中第18個gene rutr在gene_map中無匹配,故編號為0.


總結
匹配成功,撒花完結。
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
簡析Python函數(shù)式編程字符串和元組及函數(shù)分類與高階函數(shù)
這篇文章主要介紹了Python函數(shù)式編程中的字符串、元組及函數(shù)分類與高階函數(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-09-09
Python使用OpenCV實現(xiàn)獲取視頻時長的小工具
在處理視頻數(shù)據(jù)時,獲取視頻的時長是一項常見且基礎的需求,本文將詳細介紹如何使用 Python 和 OpenCV 獲取視頻時長,并對每一行代碼進行深入解析,希望對大家有所幫助2025-07-07

