In [1]:
import sys
sys.path.insert(1,'/global/homes/d/dgct/Repos/metatlas/')
from metatlas.helpers import spectralprocessing as sp
from metatlas.helpers import mzml_loader as mzl
import numpy as np
import pandas as pd
In [2]:
filename = '/project/projectdirs/metatlas/raw_data/akuftin/20170718_KBL_SD_HO_C18_DiPep_Coculture/20170718_KBL_SD-HO_ActinoMet_CoCulture_Frcts_QE139-UV_C18_102_POS-MSMS_S_melano_S_spinosa_72-2_____102040eV_135to2000_S1_Run256.mzML'
mzml_df = mzl.mzml_to_df(filename)['ms2_pos']
mzml_rt_group = mzml_df.groupby('rt')
data_df = mzml_df[['rt', 'polarity', 'precursor_mz', 'precursor_intensity', 'collision_energy']].drop_duplicates()
data_df['spectrum'] = map(lambda s: np.array(list(s)), zip(mzml_rt_group['mz'].apply(list),
mzml_rt_group['i'].apply(list)))
data_df.set_index(['rt'], inplace=True)
In [3]:
s1 = data_df.spectrum.iloc[0]
s2 = data_df.spectrum.iloc[2]
s1_aligned, s2_aligned = sp.pairwise_align_ms_vectors(s1, s2, 0.005,'intensity')
score = sp.score_ms_vectors_composite(s1_aligned, s2_aligned)
score
Out[3]: