在初始尝试读取mgf文件时,因为不知道python有一个mgf的包可以使用,因此费了一番功夫,但是后来发现python中有一个可用于读取mgf文件的包,十分方便,该包会将mgf文件输出为一个字典
使用前引入模块
from pyteomics import mgf
下载 :命令行输入 “pip install pyteomics”
Example
例test.mgf文件如下:
BEGIN IONS
TITLE=id=PXD003709;F001262.dat-pride.xml;spectrum=3670
PEPMASS=475.24009
CHARGE=2+
TAXONOMY=9606
SEQ=KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER
USER03=0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894
140.1069 4619000.0
241.1545 1140000.0
335.1347 142900.0
375.1968 70430.0
537.2758 67600.0
652.3079 71560.0
709.3286 1936000.0
END IONS
调用pyteomics包
from pyteomics import mgf
for spectrum in mgf.read("test.mgf"):
print (spectrum)
params = spectrum.get('params')
key = list(params)[3]
print(key)
title = params.get('title')
seq = params.get('seq')
print (params)
print (title)
print (seq)
输出结果
{'params': {'title': 'id=PXD003709;F001262.dat-pride.xml;spectrum=3670', 'pepmass': (475.24009, None), 'charge': [2], 'taxonomy': '9606', 'seq': 'KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER', 'user03': '0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894'}, 'm/z array': array([140.1069, 241.1545, 335.1347, 375.1968, 537.2758, 652.3079,
709.3286]), 'intensity array': array([4619000., 1140000., 142900., 70430., 67600., 71560.,
1936000.]), 'charge array': masked_array(data=[--, --, --, --, --, --, --],
mask=[ True, True, True, True, True, True, True],
fill_value=0,
dtype=int32)}
taxonomy
{'title': 'id=PXD003709;F001262.dat-pride.xml;spectrum=3670', 'pepmass': (475.24009, None), 'charge': [2], 'taxonomy': '9606', 'seq': 'KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER', 'user03': '0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894|0-MOD:01894,1-MOD:01894'}
id=PXD003709;F001262.dat-pride.xml;spectrum=3670
KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER|KGNYAER
Process finished with exit code 0