OpenMS  2.4.0
Public Member Functions | Private Member Functions | List of all members
FalseDiscoveryRate Class Reference

Calculates an FDR from identifications. More...

#include <OpenMS/ANALYSIS/ID/FalseDiscoveryRate.h>

Inheritance diagram for FalseDiscoveryRate:
DefaultParamHandler

Public Member Functions

 FalseDiscoveryRate ()
 Default constructor. More...
 
void apply (std::vector< PeptideIdentification > &fwd_ids, std::vector< PeptideIdentification > &rev_ids) const
 Calculates the FDR of two runs, a forward run and a decoy run on peptide level. More...
 
void apply (std::vector< PeptideIdentification > &id) const
 Calculates the FDR of one run from a concatenated sequence db search. More...
 
void apply (std::vector< ProteinIdentification > &fwd_ids, std::vector< ProteinIdentification > &rev_ids) const
 Calculates the FDR of two runs, a forward run and decoy run on protein level. More...
 
void apply (std::vector< ProteinIdentification > &ids) const
 Calculate the FDR of one run from a concatenated sequence db search. More...
 
- Public Member Functions inherited from DefaultParamHandler
 DefaultParamHandler (const String &name)
 Constructor with name that is displayed in error messages. More...
 
 DefaultParamHandler (const DefaultParamHandler &rhs)
 Copy constructor. More...
 
virtual ~DefaultParamHandler ()
 Destructor. More...
 
virtual DefaultParamHandleroperator= (const DefaultParamHandler &rhs)
 Assignment operator. More...
 
virtual bool operator== (const DefaultParamHandler &rhs) const
 Equality operator. More...
 
void setParameters (const Param &param)
 Sets the parameters. More...
 
const ParamgetParameters () const
 Non-mutable access to the parameters. More...
 
const ParamgetDefaults () const
 Non-mutable access to the default parameters. More...
 
const StringgetName () const
 Non-mutable access to the name. More...
 
void setName (const String &name)
 Mutable access to the name. More...
 
const std::vector< String > & getSubsections () const
 Non-mutable access to the registered subsections. More...
 

Private Member Functions

 FalseDiscoveryRate (const FalseDiscoveryRate &)
 Not implemented. More...
 
FalseDiscoveryRateoperator= (const FalseDiscoveryRate &)
 Not implemented. More...
 
void calculateFDRs_ (Map< double, double > &score_to_fdr, std::vector< double > &target_scores, std::vector< double > &decoy_scores, bool q_value, bool higher_score_better) const
 calculates the fdr stored into fdrs, given two vectors of scores More...
 

Additional Inherited Members

- Protected Member Functions inherited from DefaultParamHandler
virtual void updateMembers_ ()
 This method is used to update extra member variables at the end of the setParameters() method. More...
 
void defaultsToParam_ ()
 Updates the parameters after the defaults have been set in the constructor. More...
 
- Protected Attributes inherited from DefaultParamHandler
Param param_
 Container for current parameters. More...
 
Param defaults_
 Container for default parameters. This member should be filled in the constructor of derived classes! More...
 
std::vector< Stringsubsections_
 Container for registered subsections. This member should be filled in the constructor of derived classes! More...
 
String error_name_
 Name that is displayed in error messages during the parameter checking. More...
 
bool check_defaults_
 If this member is set to false no checking if parameters in done;. More...
 
bool warn_empty_defaults_
 If this member is set to false no warning is emitted when defaults are empty;. More...
 

Detailed Description

Calculates an FDR from identifications.

Either two runs of forward and decoy database identification or one run containing both (with marks) can be used to annotate each of the peptide hits with a FDR.

Also q-values can be reported instead of p-values. q-values are basically only adjusted p-values, also ranging from 0 to 1, with lower values being preferable. When looking at the list of hits ordered by q-values, then a hit with q-value of x means that there is an x*100 percent chance that all hits with a q-value <= x are a false positive hit.

Todo:
implement combined searches properly (Andreas)
Improvement:
implement charge state separated fdr/q-values (Andreas)
Parameters of this class are:

NameTypeDefaultRestrictionsDescription
no_qvalues stringfalse true, falseIf 'true' strict FDRs will be calculated instead of q-values (the default)
use_all_hits stringfalse true, falseIf 'true' not only the first hit, but all are used (peptides only)
split_charge_variants stringfalse true, falseIf 'true' charge variants are treated separately (for peptides of combined target/decoy searches only).
treat_runs_separately stringfalse true, falseIf 'true' different search runs are treated separately (for peptides of combined target/decoy searches only).
add_decoy_peptides stringfalse true, falseIf 'true' decoy peptides will be written to output file, too. The q-value is set to the closest target score.
add_decoy_proteins stringfalse true, falseIf 'true' decoy proteins will be written to output file, too. The q-value is set to the closest target score.

Note:

Constructor & Destructor Documentation

◆ FalseDiscoveryRate() [1/2]

Default constructor.

◆ FalseDiscoveryRate() [2/2]

FalseDiscoveryRate ( const FalseDiscoveryRate )
private

Not implemented.

Member Function Documentation

◆ apply() [1/4]

void apply ( std::vector< PeptideIdentification > &  fwd_ids,
std::vector< PeptideIdentification > &  rev_ids 
) const

Calculates the FDR of two runs, a forward run and a decoy run on peptide level.

Parameters
fwd_idsforward peptide identifications
rev_idsreverse peptide identifications

Referenced by RNPxlSearch::main_().

◆ apply() [2/4]

void apply ( std::vector< PeptideIdentification > &  id) const

Calculates the FDR of one run from a concatenated sequence db search.

Parameters
idpeptide identifications, containing target and decoy hits

◆ apply() [3/4]

void apply ( std::vector< ProteinIdentification > &  fwd_ids,
std::vector< ProteinIdentification > &  rev_ids 
) const

Calculates the FDR of two runs, a forward run and decoy run on protein level.

Parameters
fwd_idsforward protein identifications
rev_idsreverse protein identifications

◆ apply() [4/4]

void apply ( std::vector< ProteinIdentification > &  ids) const

Calculate the FDR of one run from a concatenated sequence db search.

Parameters
idsprotein identifications, containing target and decoy hits

◆ calculateFDRs_()

void calculateFDRs_ ( Map< double, double > &  score_to_fdr,
std::vector< double > &  target_scores,
std::vector< double > &  decoy_scores,
bool  q_value,
bool  higher_score_better 
) const
private

calculates the fdr stored into fdrs, given two vectors of scores

◆ operator=()

FalseDiscoveryRate& operator= ( const FalseDiscoveryRate )
private

Not implemented.