class PSM
<spectrum_query spectrum="mr176-BSA100fmole_BA3_01_8167.00003.00003.2" start_scan="3" end_scan="3"
precursor_neutral_mass=“1398.7082” assumed_charge=“2” index=“2” experiment_label=“mr176”>
<search_result> <search_hit hit_rank="1" peptide="SQVFQLESTFDV" peptide_prev_aa="R" peptide_next_aa="K" protein="tr|Q90853|Q90853_CHICK" protein_descr="Homeobox protein OS=Gallus gallus GN=GH6 PE=2 SV=1" num_tot_proteins="1" num_matched_ions="9" tot_num_ions="22" calc_neutral_pep_mass="1380.6557" massdiff="18.053" num_tol_term="1" num_missed_cleavages="0" is_rejected="0"> <search_score name="hyperscore" value="23.9"/> <search_score name="nextscore" value="19.3"/> <search_score name="bscore" value="9.6"/> <search_score name="yscore" value="7.6"/> <search_score name="cscore" value="0"/> <search_score name="zscore" value="0"/> <search_score name="ascore" value="0"/> <search_score name="xscore" value="0"/> <search_score name="expect" value="0.099"/> <analysis_result analysis="peptideprophet"> <peptideprophet_result probability="0.9997" all_ntt_prob="(0.0000,0.9997,0.9999)"> <search_score_summary> <parameter name="fval" value="2.3571"/> <parameter name="ntt" value="1"/> <parameter name="nmc" value="0"/> <parameter name="massd" value="18.053"/> </search_score_summary> </peptideprophet_result> </analysis_result> </search_hit> </search_result> </spectrum_query>
Attributes
calculated_mz[RW]
charge[RW]
experimental_mz[RW]
peptide[RW]
peptide_evidence[RW]
scores[RW]
Public Class Methods
from_mzid(psm_node,mzid_doc)
click to toggle source
<SpectrumIdentificationResult spectraData_ref=“ma201_Vp_1-10.mzML.mgf” spectrumID=“index=3152” id=“SIR_1”>
<SpectrumIdentificationItem passThreshold="false" rank="1" peptide_ref="KSPVYKVHFTR" calculatedMassToCharge="1360.7615466836999" experimentalMassToCharge="1362.805053710938" chargeState="1" id="SII_1_1"> <PeptideEvidenceRef peptideEvidence_ref="PepEv_1" /> <Fragmentation> <IonType charge="1" index="1 4"> <FragmentArray measure_ref="Measure_MZ" values="175.2081208 560.3388993" /> <FragmentArray measure_ref="Measure_Int" values="94.0459823608 116.2766723633" /> <FragmentArray measure_ref="Measure_Error" values="0.08916864948798775 0.0449421494880653" /> <cvParam cvRef="PSI-MS" accession="MS:1001220" name="frag: y ion" /> </IonType> </Fragmentation> <cvParam cvRef="PSI-MS" accession="MS:1002466" name="PeptideShaker PSM score" value="0.0" /> <cvParam cvRef="PSI-MS" accession="MS:1002467" name="PeptideShaker PSM confidence" value="0.0" /> <cvParam cvRef="PSI-MS" accession="MS:1002052" name="MS-GF:SpecEValue" value="1.4757611E-6" /> <cvParam cvRef="PSI-MS" accession="MS:1001117" name="theoretical mass" value="1360.7615466836999" /> <cvParam cvRef="PSI-MS" accession="MS:1002543" name="PeptideShaker PSM confidence type" value="Not Validated" /> </SpectrumIdentificationItem> <cvParam cvRef="PSI-MS" accession="MS:1000796" name="spectrum title" value="Suresh Vp 1 to 10_BAF.3535.3535.1" /> <cvParam cvRef="PSI-MS" accession="MS:1000894" name="retention time" value="6855.00001" unitCvRef="UO" unitAccession="UO:0000010" unitName="seconds" />
</SpectrumIdentificationResult>
# File lib/protk/psm.rb, line 166 def from_mzid(psm_node,mzid_doc) psm = new() psm.peptide = mzid_doc.get_sequence_for_psm(psm_node) peptide_evidence_nodes = mzid_doc.get_peptide_evidence_from_psm(psm_node) psm.peptide_evidence = peptide_evidence_nodes.collect { |pe| PeptideEvidence.from_mzid(pe,mzid_doc) } psm.calculated_mz = psm_node.attributes['calculatedMassToCharge'].to_f psm.experimental_mz = psm_node.attributes['experimentalMassToCharge'].to_f psm.charge = psm_node.attributes['chargeState'].to_i psm end
new()
click to toggle source
# File lib/protk/psm.rb, line 183 def initialize() end
Public Instance Methods
as_pepxml()
click to toggle source
From what I can tell, search_hit is always trivially wrapped in search_result 1:1
# File lib/protk/psm.rb, line 199 def as_pepxml() hit_node = XML::Node.new('search_hit') hit_node['peptide']=self.peptide.to_s # require 'byebug';byebug first_evidence = self.peptide_evidence.first hit_node['peptide_prev_aa']=first_evidence.peptide_prev_aa hit_node['peptide_next_aa']=first_evidence.peptide_next_aa hit_node['protein']=first_evidence.protein hit_node['protein_descr']=first_evidence.protein_descr hit_node['num_tot_proteins']=self.peptide_evidence.length.to_s alt_evidence = peptide_evidence.drop(1) alt_evidence.each { |ae| hit_node << ae.as_pepxml } result_node = XML::Node.new('search_result') result_node << hit_node result_node end