Example program for extracting the peptide or protein summary.
#!/usr/local/bin/perl ############################################################################## # file: resfile_summary.pl # # 'msparser' toolkit # # Test harness / example code # ############################################################################## # COPYRIGHT NOTICE # # Copyright 1998-2016 Matrix Science Limited All Rights Reserved. # # # ############################################################################## # $Source: parser/examples/test_perl/resfile_summary.pl $ # # $Author: villek@matrixscience.com $ # # $Date: 2018-07-30 16:23:53 +0100 $ # # $Revision: 1b450440f9c97e1e41d0fc6016a27d68951d4532 | MSPARSER_REL_2_8_1-0-gea32989045 $ # # $NoKeywords:: $ # ############################################################################## use strict; ############################################################################## use msparser; if (!defined($ARGV[0])) { die "Must specify results filename as parameter"; } my $returnValue = 1; my $resfile = new msparser::ms_mascotresfile($ARGV[0]); if (checkErrors($resfile)) { # The parameters passed to ms_peptidesummary or ms_proteinsummary determine # the type of grouping and the number of proteins and peptides displayed. # Default parameters can be returned using ms_mascotresfile::get_ms_mascotresults_params(). # The return values from this function depend on the type of search, # and also on values in the mascot.dat configuration file if that is available. my $datfile = new msparser::ms_datfile("../config/mascot.dat"); # You may need to change this path # if the mascot.dat isn't available, use defaults my $mascotOptions; if ($datfile->isValid()) { $mascotOptions = $datfile->getMascotOptions(); } my ($scriptName, $flags, $minProbability, $maxHitsToReport, $ignoreIonsScoreBelow, $minPepLenInPepSummary, $usePeptideSummary, $flags2 ) = $resfile->get_ms_mascotresults_params($datfile->getMascotOptions); my $bResult; if ($usePeptideSummary) { # For peptide summary # # Flags defined for hierarchical clustering algorithm: # flags: ms_mascotresults::MSRES_CLUSTER_PROTEINS # | ms_mascotresults::MSRES_SHOW_SUBSETS # | ms_mascotresults::MSRES_MUDPIT_PROTEIN_SCORE; # flags2: ms_peptidesummary::MSPEPSUM_USE_HOMOLOGY_THRESH; # # Flags defined for original simple parsimony algorithm: # flags: ms_mascotresults::MSRES_GROUP_PROTEINS | ms_mascotresults::MSRES_SHOW_SUBSETS; print "-------------------------------------------------------------\n"; print "--- Peptide summary report ---\n"; print "-------------------------------------------------------------\n"; $bResult = show_results( $resfile, $usePeptideSummary, $flags, $minProbability, $maxHitsToReport, $ignoreIonsScoreBelow, $minPepLenInPepSummary, $flags2 ); } else { # Show results from full protein summary, remove grouping $flags &= ~$msparser::ms_mascotresults::MSRES_GROUP_PROTEINS; $flags &= ~$msparser::ms_mascotresults::MSRES_SHOW_SUBSETS; print "-------------------------------------------------------------\n"; print "--- Full Protein summary report ---\n"; print "-------------------------------------------------------------\n"; $bResult = show_results( $resfile, $usePeptideSummary, $flags, $minProbability, $maxHitsToReport, $ignoreIonsScoreBelow, $minPepLenInPepSummary, $flags2 ); if($bResult and checkErrors($resfile)) { # Show results from concise protein summary, add grouping $flags |= $msparser::ms_mascotresults::MSRES_GROUP_PROTEINS; $flags |= $msparser::ms_mascotresults::MSRES_SHOW_SUBSETS; print "-------------------------------------------------------------\n"; print "--- Concise Protein summary report ---\n"; print "-------------------------------------------------------------\n"; $bResult = show_results( $resfile, $usePeptideSummary, $flags, $minProbability, $maxHitsToReport, $ignoreIonsScoreBelow, $minPepLenInPepSummary, $flags2 ); } } if($bResult and checkErrors($resfile)) { $returnValue = 0; } } exit($returnValue); ############################################################################## # show_results # # - parameter 0 is ms_mascotresfile # # - parameter 1 is true for peptide summary, false for protein # # - parameter 2 is the flags for display # # - parameter 3 is the minimum protein probability to display # # - parameter 4 is the maximum number of hits to display # # - parameter 5 is the minimum ions score to use # # - parameter 6 is the minPepLenInPepSummary to use # ############################################################################## sub show_results { my($file, $usePeptideSummary, $flags, $minProteinProb, $maxHits, $minIonsScore, $minPepLenInPepSummary, $flags2) = @_; my $results; if ($usePeptideSummary) { $results = new msparser::ms_peptidesummary( $file, $flags, $minProteinProb, $maxHits, "", $minIonsScore, $minPepLenInPepSummary, "", $flags2 ); } else { $results = new msparser::ms_proteinsummary( $file, $flags, $minProteinProb, $maxHits ); } # Stop there is any fatal error occurred if (not checkErrors($file)) { return 0; } my $family = 1; my $hit = 1; my $prot = $results->getHit($hit); while ($prot) { my $accession = $prot->getAccession(); my $description = $results->getProteinDescription($accession); my $mass = $results->getProteinMass($accession); my $dbIdx = $prot->getDB(); if ($flags & $msparser::ms_mascotresults::MSRES_CLUSTER_PROTEINS) { print "Protein Hit ", $hit, ".", $family, "\n===================\n"; } else { print "Protein Hit ", $hit, "\n===================\n"; } print "Accession : " , $accession, "\n"; print "Description : " , $description , "\n"; print "Score : " , $prot->getScore() , "\n"; print "Mass : " , $mass , "\n"; print "Frame : " , $prot->getFrame() , "\n"; print "Coverage : " , $prot->getCoverage() , "\n"; print "RMS error : " , $prot->getRMSDeltas($results), "\n"; print "Peptides : " , $prot->getNumDisplayPeptides(),"\n"; # Each protein has a number of peptides that matched - list them: my $num_peps = $prot->getNumPeptides(); for my $i (1 .. $num_peps) { my $query = $prot->getPeptideQuery($i); my $p = $prot->getPeptideP($i); if ( $p != -1 and $query != -1 and $prot->getPeptideDuplicate($i) != $msparser::ms_protein::DUPE_DuplicateSameQuery ) { my $pep = $results->getPeptide($query, $p); next unless defined $pep; displayPeptideInfo( 0, $pep, $results, $prot->getPeptideDuplicate($i) == $msparser::ms_protein::DUPE_Duplicate, $prot->getPeptideIsBold($i), $prot->getPeptideShowCheckbox($i) ); } } # Now display list of all proteins that contained subsets or and # identical list of the matching peptides if ($flags & $msparser::ms_mascotresults::MSRES_GROUP_PROTEINS or $flags & $msparser::ms_mascotresults::MSRES_CLUSTER_PROTEINS) { print "Proteins matching the same set of peptides:\n"; my $i = 1; while (my $prot = $results->getNextSimilarProteinOf($accession, $dbIdx, $i)) { my $accession = $prot->getAccession(); my $dbIdx = $prot->getDB(); if($flags & $msparser::ms_mascotresults::MSRES_CLUSTER_PROTEINS and $dbIdx > 1) { print $dbIdx, "::"; } print $accession, " - Total score: ", $prot->getScore(); print " - Peptides matched: ", $prot->getNumDisplayPeptides(), "\n"; $i++; } if ($flags & $msparser::ms_mascotresults::MSRES_SHOW_SUBSETS) { print "Proteins matching a subset of these peptides:\n"; my $i = 1; while ($prot = $results->getNextSubsetProteinOf($accession, $dbIdx, $i)) { my $accession = $prot->getAccession(); my $dbIdx = $prot->getDB(); if($flags & $msparser::ms_mascotresults::MSRES_CLUSTER_PROTEINS and $dbIdx > 1) { print $dbIdx, "::"; } print $accession, " - Total score: ", $prot->getScore(); print " - Peptides matched: ", $prot->getNumDisplayPeptides(), "\n"; if ($flags & $msparser::ms_mascotresults::MSRES_CLUSTER_PROTEINS) { my $j = 1; if($results->getNextSimilarProteinOf($accession, $dbIdx, $j)){ print " Proteins matching the same set of peptides for this subset:\n"; } while (my $similar_subset_prot = $results->getNextSimilarProteinOf($accession, $dbIdx, $j)) { my $similar_subset_accession = $similar_subset_prot->getAccession(); my $similar_subset_dbIdx = $similar_subset_prot->getDB(); print " "; if($similar_subset_dbIdx > 1) { print $similar_subset_dbIdx, "::"; } print $similar_subset_accession, " - Total score: ", $similar_subset_prot->getScore(); print " - Peptides matched: ", $similar_subset_prot->getNumDisplayPeptides(), "\n"; $j++; } } $i++; } } } if ($flags & $msparser::ms_mascotresults::MSRES_CLUSTER_PROTEINS) { $prot = $results->getNextFamilyProtein($hit, $family++); if(!$prot) { $hit++; $prot = $results->getHit($hit); $family = 1; } } else { $hit++; $prot = $results->getHit($hit); } print "\n"; } $results->createUnassignedList($msparser::ms_mascotresults::SCORE); if ($results->getNumberOfUnassigned()) { print "Unassigned list\n"; print "---------------\n"; for my $u (1 .. $results->getNumberOfUnassigned) { my $pep = $results->getUnassigned($u); displayPeptideInfo(0, $pep, $results, 0, 1, 1); } } if ($usePeptideSummary) { print "\n"; displayYellowPopupInfo($results, 1); } return 1; } ############################################################################## # displayYellowPopupInfo # # Shows the equivalent of the yellow popup box for given query # # - parameter 0 is the results object # # - parameter 1 is the query number # ############################################################################## sub displayYellowPopupInfo { my ($results, $q) = @_; my $fmt = "%5s %5s %9s %7s %7s\n"; printf $fmt, qw(Score Delta Hit Protein Peptide); for my $p (1 .. 10) { my $pep = $results->getPeptide($q, $p); next unless defined $pep; my $seq = $pep->getPeptideStr(); next unless defined $seq; my $tmp = $results->getProteinsWithThisPepMatch($q, $p); my ($hit, $protein) = ('', ''); if ($tmp) { ($hit, $protein, my $morethan) = $tmp =~ /(\d+):([^ ]*)[ ]*(.*)/; if ($morethan) { $hit .= "+"; } } printf $fmt, $pep->getIonsScore(), $pep->getDelta(), $hit, $protein, $seq; } my $p = 1; print "Accessions that matched query ", $q, " rank ", $p, ":- ", $results->getProteinsWithThisPepMatch($q, $p), "\n"; } ############################################################################## # displayPeptideInfo # # - parameter 0 showFullDetails? # # - parameter 1 p # # - parameter 2 ms_mascotresults # # - parameter 3 isDuplicate? # # - parameter 4 isBold? # # - parameter 5 showCheckBox? # ############################################################################## sub displayPeptideInfo { my ($showFullDetails, $p, $r, $isDuplicate, $isBold, $showCheckBox) = @_; my $q = $p->getQuery(); if (!$showFullDetails) { my $fmt = "%2s %4s %4d %11f %4d(%4d) %-20s %s%3.2f%s %3d\n"; printf $fmt, $showCheckBox ? "CB" : "--", $isBold ? "BOLD" : "dim", $q, $p->getObserved, $p->getRank, $p->getPrettyRank, $p->getPeptideStr, $isDuplicate ? '(' : '', $p->getIonsScore, $isDuplicate ? ')' : '', $r->getReadableVarMods($q, $p->getRank), ; return; } print "Peptide hit\n"; if ($p->getAnyMatch()) { my $fmt = " %-12s: %s\n"; printf $fmt, 'Query' , $q; printf $fmt, 'Rank' , $p->getRank; printf $fmt, 'Matched' , $p->getAnyMatch; printf $fmt, 'missedCleave', $p->getMissedCleavages; printf $fmt, 'mrCalc' , $p->getMrCalc; printf $fmt, 'delta' , $p->getDelta; printf $fmt, 'observed' , $p->getObserved; printf $fmt, 'charge' , $p->getCharge; printf $fmt, 'mrExp' , $p->getMrExperimental; printf $fmt, 'ionsMatched' , $p->getNumIonsMatched; printf $fmt, 'peptideStr' , $p->getPeptideStr; printf $fmt, 'peaksUsed1' , $p->getPeaksUsedFromIons1; printf $fmt, 'varModsStr' , $p->getVarModsStr; printf $fmt, 'readable mod', $r->getReadableVarMods($q, $p->getRank); printf $fmt, 'ionsScore' , $p->getIonsScore; printf $fmt, 'seriesUsedS' , $p->getSeriesUsedStr; printf $fmt, 'peaksUsed2' , $p->getPeaksUsedFromIons3; printf $fmt, 'peaksUsed3' , $p->getPeaksUsedFromIons3; printf $fmt, 'idth, hth, p', join(', ', $r->getPeptideIdentityThreshold($q, 20), $r->getHomologyThreshold($q, 20), $r->getProbOfPepBeingRandomMatch($p->getIonsScore, $q) ); print "\n"; } else { print " No match\n"; } } ############################################################################## # checkErrors # # - parameter 0 file is a ms_mascotresfile # ############################################################################## sub checkErrors() { my ($file) = @_; if ($file->getLastError()) { for my $i (1 .. $file->getNumberOfErrors) { print "Error number: ", $file->getErrorNumber($i); print " : ", $file->getErrorString($i); print "\n"; } } #Call isValid before clearAllErrors, otherwise this method always returns true my $bIsValid = $file->isValid(); $file->clearAllErrors(); return $bIsValid; } =pod Running the program as perl -I../bin resfile_summary.pl ../data/F981123.dat will give the following output under Mascot Server 2.3: ------------------------------------------------------------- --- Peptide summary report --- ------------------------------------------------------------- Protein Hit 1 =================== Accession : CH60_HUMAN Description : 60 kDa heat shock protein, mitochondrial precursor (Hsp60) (60 kDa chaperonin) (CPN60) (Heat shock Score : 1225.18623376928 Mass : 61016.38 Frame : 0 Coverage : 283 RMS error : 30.4200726378481 Peptides : 31 CB BOLD 11 417.182190 1( 1) APGFGDNR 45.35 0 CB BOLD 12 422.743286 1( 1) VGEVIVTK 45.74 0 CB BOLD 13 430.732788 1( 1) IPAMTIAK 36.27 0 CB BOLD 15 451.249908 1( 1) LSDGVAVLK 51.95 0 CB BOLD 16 456.780609 1( 1) VGLQVVAVK 59.00 0 CB BOLD 21 480.744690 1( 1) VTDALNATR 45.33 0 CB BOLD 24 595.785522 1( 1) EIGNIISDAMK (56.55) 0 CB BOLD 25 603.771973 1( 1) EIGNIISDAMK 59.52 0 CB BOLD 26 608.309875 1( 1) NAGVEGSLIVEK 73.21 0 CB BOLD 27 617.285706 1( 1) VGGTSDVEVNEK 80.63 0 CB BOLD 31 672.837524 1( 1) TVIIEQSWGSPK 64.38 0 CB BOLD 34 714.888428 1( 1) GVMLAVDAVIAELK (64.52) 0 CB BOLD 35 714.893799 1( 1) GVMLAVDAVIAELK (72.61) 0 CB BOLD 36 722.884888 1( 1) GVMLAVDAVIAELK 75.19 0 CB BOLD 37 722.893372 1( 1) GVMLAVDAVIAELK (72.57) 0 CB BOLD 39 752.864319 1( 1) TLNDELEIIEGMK 89.56 0 CB BOLD 40 760.846130 1( 1) TLNDELEIIEGMK (88.82) 0 CB BOLD 45 640.328125 1( 1) ISSIQSIVPALEIANAHR 101.50 0 CB BOLD 46 960.032715 1( 1) ISSIQSIVPALEIANAHR (87.34) 0 CB BOLD 48 1019.510620 1( 1) IQEIIEQLDVTTSEYEK 52.42 0 CB BOLD 51 1057.053711 1( 1) ALMLQGVDLLADAVAVTMGPK 115.78 0 CB BOLD 52 1065.039917 1( 1) ALMLQGVDLLADAVAVTMGPK (71.79) 0 CB BOLD 53 1065.062256 1( 1) ALMLQGVDLLADAVAVTMGPK (26.17) 0 CB BOLD 54 1073.047729 1( 1) ALMLQGVDLLADAVAVTMGPK (92.82) 2 CB BOLD 58 789.106201 1( 1) KPLVIIAEDVDGEALSTLVLNR (55.53) 0 CB BOLD 59 1183.156982 1( 1) KPLVIIAEDVDGEALSTLVLNR (65.46) 0 CB BOLD 60 789.109375 1( 1) KPLVIIAEDVDGEALSTLVLNR 94.59 0 CB BOLD 61 828.123779 1( 1) TALLDAAGVASLLTTAEVVVTEIPK (26.50) 0 CB BOLD 62 828.132202 1( 1) TALLDAAGVASLLTTAEVVVTEIPK 47.53 0 CB BOLD 64 854.058777 1( 1) LVQDVANNTNEEAGDGTTTATVLAR 75.15 0 CB BOLD 65 1038.503052 1( 1) DMAIATGGAVFGEEGLTLNLEDVQPHDLGK 13.05 0 Proteins matching the same set of peptides: Proteins matching a subset of these peptides: CH60_PONPY Total score: 1007.90623376928 Peptides matched: 25 CH60_CRIGR Total score: 951.166233769285 Peptides matched: 23 CH60_MOUSE Total score: 951.166233769285 Peptides matched: 23 CH60_RAT Total score: 951.166233769285 Peptides matched: 23 CH60_BOVIN Total score: 917.68246753857 Peptides matched: 22 CH60_CHICK Total score: 875.976233769285 Peptides matched: 19 CH60C_DROME Total score: 120.5 Peptides matched: 2 CH60C_ARATH Total score: 90.68 Peptides matched: 2 HSP60_CANAL Total score: 45.35 Peptides matched: 1 HSP60_PARBR Total score: 45.35 Peptides matched: 1 HSP60_YEAST Total score: 45.35 Peptides matched: 1 CH602_VIBPA Total score: 45.35 Peptides matched: 1 CH602_VIBVU Total score: 45.35 Peptides matched: 1 CH602_VIBVY Total score: 45.35 Peptides matched: 1 CH60_EUGGR Total score: 45.33 Peptides matched: 1 Protein Hit 2 =================== Accession : CH60_DROME Description : 60 kDa heat shock protein, mitochondrial precursor (Hsp60) (60 kDa chaperonin) (CPN60) (Heat shock Score : 174.39 Mass : 60770.89 Frame : 0 Coverage : 67 RMS error : 29.5905072791318 Peptides : 4 -- dim 11 417.182190 1( 1) APGFGDNR 45.35 0 -- dim 27 617.285706 2( 2) VGGSSEVEVNEK 41.69 0 -- dim 59 1183.156982 2( 2) KPLVIIAEDIDGEALSTLVVNR 12.20 0 -- dim 64 854.058777 1( 1) LVQDVANNTNEEAGDGTTTATVLAR 75.15 0 Proteins matching the same set of peptides: Proteins matching a subset of these peptides: HSP60_SCHPO Total score: 87.04 Peptides matched: 2 Protein Hit 3 =================== Accession : CH60_CAEEL Description : Chaperonin homolog Hsp-60, mitochondrial precursor (Heat shock protein 60) (HSP-60) - Caenorhabditi Score : 134.91 Mass : 60063.75 Frame : 0 Coverage : 21 RMS error : 36.5383063193603 Peptides : 3 -- dim 11 417.182190 1( 1) APGFGDNR 45.35 0 -- dim 39 752.864319 2( 1) TLNDELELIEGMK 89.56 0 -- dim 40 760.846130 2( 1) TLNDELELIEGMK (88.82) 0 Proteins matching the same set of peptides: Proteins matching a subset of these peptides: Protein Hit 4 =================== Accession : CH60_XANAC Description : 60 kDa chaperonin (Protein Cpn60) (groEL protein) - Xanthomonas axonopodis pv. citri Score : 42.2 Mass : 57130.83 Frame : 0 Coverage : 9 RMS error : 76.92376960617 Peptides : 1 -- dim 16 456.780609 2( 2) GIVKVVAVK 42.20 0 Proteins matching the same set of peptides: CH60_XANC5 Total score: 42.2 Peptides matched: 1 CH60_XANC8 Total score: 42.2 Peptides matched: 1 CH60_XANCH Total score: 42.2 Peptides matched: 1 CH60_XANCP Total score: 42.2 Peptides matched: 1 CH60_XANOM Total score: 42.2 Peptides matched: 1 CH60_XANOR Total score: 42.2 Peptides matched: 1 Proteins matching a subset of these peptides: Protein Hit 5 =================== Accession : NMDE4_HUMAN Description : Score : 37.24 Mass : 0 Frame : 0 Coverage : 10 RMS error : 9.41906700790969 Peptides : 1 -- dim 16 456.780609 3( 3) VAAGVAVVAR 37.24 0 Proteins matching the same set of peptides: NMDE4_MOUSE Total score: 37.24 Peptides matched: 1 NMDE4_RAT Total score: 36.2762337692848 Peptides matched: 1 Proteins matching a subset of these peptides: Protein Hit 6 =================== Accession : YF81_THET2 Description : Score : 34.76 Mass : 0 Frame : 0 Coverage : 9 RMS error : 37.0214184966023 Peptides : 1 -- dim 16 456.780609 4( 4) VAQVLGVVK 34.76 0 Proteins matching the same set of peptides: Y1944_THET8 Total score: 34.76 Peptides matched: 1 Proteins matching a subset of these peptides: Protein Hit 7 =================== Accession : F4ST_FLACH Description : Score : 33.85 Mass : 0 Frame : 0 Coverage : 9 RMS error : 87.8815544838649 Peptides : 1 -- dim 15 451.249908 2( 2) LSATGLVLK 33.85 0 Proteins matching the same set of peptides: Proteins matching a subset of these peptides: Protein Hit 8 =================== Accession : ZN711_HUMAN Description : Zinc finger protein 711 (Zinc finger protein 6) - Homo sapiens (Human) Score : 30.84 Mass : 87153.77 Frame : 0 Coverage : 13 RMS error : 69.4028633218151 Peptides : 1 CB BOLD 33 714.364929 1( 1) EASPLSSNKLILR 30.84 0 Proteins matching the same set of peptides: Proteins matching a subset of these peptides: Unassigned list --------------- CB BOLD 14 442.228302 1( 1) LIAQTPLK 25.09 0 CB BOLD 9 747.396179 1( 1) EGETRR 15.03 0 CB BOLD 4 662.275574 1( 1) KNAMAK 14.09 0 CB BOLD 23 1101.621704 1( 1) QLLMVAGVDR 12.04 0 CB BOLD 5 662.417175 1( 1) AIACER 11.79 0 CB BOLD 8 714.372498 1( 1) LAPAQSK 10.69 0 CB BOLD 6 673.349487 1( 1) AVNDVR 10.63 0 CB BOLD 22 1101.536621 1( 1) ENVIPADSEK 8.65 0 CB BOLD 55 1099.094727 1( 1) LNAEAVRTLLSANGQKPSEAK 8.05 0 CB BOLD 29 642.353577 1( 1) VVGVAGQGASALVR 7.91 0 CB BOLD 28 642.352600 1( 1) KNVSVSQGPDPR 7.22 0 CB BOLD 30 663.837891 1( 1) TPLLVGVAKGESR 7.20 0 CB BOLD 50 1048.561523 1( 1) ALDEILEYQNYPVVCAKK 5.70 0 CB BOLD 57 747.036072 1( 1) VMGSAFTALLDANEDAQKAMR 4.83 0 CB BOLD 49 1020.987915 1( 1) HQRLSGLMQTALEEQQR 4.11 0 CB BOLD 19 932.364380 1( 1) TGMTRNPR 4.09 0 CB BOLD 2 500.256012 1( 1) LAVPT 3.87 0 CB BOLD 38 749.383972 1( 1) IDLLADMMWDDK 3.43 2 CB BOLD 20 933.499023 1( 1) SRDPGMVR 3.21 0 CB BOLD 41 886.405884 1( 1) DRVALNQEVMAPEATK 1.85 0 CB BOLD 10 747.412476 1( 1) MAPSTPK 1.68 0 CB BOLD 18 930.703003 1( 1) LGSGIKAER 1.60 0 CB BOLD 7 711.364685 1( 1) GGAHEIK 1.34 0 CB BOLD 17 930.683105 1( 1) KIQAEITK 1.00 0 CB BOLD 44 949.550720 1( 1) LLSWDSVFFIKNITSK 0.30 0 CB BOLD 1 498.272888 1( 1) 0.00 0 CB BOLD 3 575.558411 1( 1) 0.00 0 CB BOLD 32 711.370728 1( 1) 0.00 0 CB BOLD 42 932.460815 1( 1) 0.00 0 CB BOLD 43 933.003784 1( 1) 0.00 0 CB BOLD 47 665.009583 1( 1) 0.00 0 CB BOLD 56 1119.045166 1( 1) 0.00 0 CB BOLD 63 832.798584 1( 1) 0.00 0 CB BOLD 66 1113.894653 1( 1) 0.00 0 CB BOLD 67 1116.177490 1( 1) 0.00 0 Score Delta Hit Protein Peptide 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Accessions that matched query 97 rank 1:- =cut
Copyright © 2022 Matrix Science Ltd. All Rights Reserved. Generated on Thu Mar 31 2022 01:12:29 |