OpenMS
2.4.0
|
Representation of the Experimental Design in OpenMS. Instances can be loaded via the ExperimentalDesignFile class. More...
#include <OpenMS/METADATA/ExperimentalDesign.h>
Classes | |
class | MSFileSectionEntry |
class | SampleSection |
Public Types | |
using | MSFileSection = std::vector< MSFileSectionEntry > |
Public Member Functions | |
ExperimentalDesign ()=default | |
ExperimentalDesign (const MSFileSection &msfile_section, const SampleSection &sample_section) | |
const MSFileSection & | getMSFileSection () const |
void | setMSFileSection (const MSFileSection &msfile_section) |
const ExperimentalDesign::SampleSection & | getSampleSection () const |
void | setSampleSection (const SampleSection &sample_section) |
std::map< unsigned int, std::vector< String > > | getFractionToMSFilesMapping () const |
return fraction index to file paths (ordered by fraction_group) More... | |
std::map< std::pair< String, unsigned >, unsigned > | getPathLabelToSampleMapping (bool) const |
return <file_path, label> to sample mapping More... | |
std::map< std::pair< String, unsigned >, unsigned > | getPathLabelToFractionMapping (bool) const |
return <file_path, label> to fraction mapping More... | |
std::map< std::pair< String, unsigned >, unsigned > | getPathLabelToFractionGroupMapping (bool) const |
return <file_path, label> to fraction_group mapping More... | |
unsigned | getNumberOfSamples () const |
unsigned | getNumberOfFractions () const |
unsigned | getNumberOfLabels () const |
unsigned | getNumberOfMSFiles () const |
unsigned | getNumberOfFractionGroups () const |
unsigned | getSample (unsigned fraction_group, unsigned label=1) |
bool | isFractionated () const |
bool | sameNrOfMSFilesPerFraction () const |
Static Public Member Functions | |
static ExperimentalDesign | fromConsensusMap (const ConsensusMap &c) |
Extract experimental design from consensus map. More... | |
static ExperimentalDesign | fromFeatureMap (const FeatureMap &f) |
Extract experimental design from feature map. More... | |
static ExperimentalDesign | fromIdentifications (const std::vector< ProteinIdentification > &proteins) |
Extract experimental design from identifications. More... | |
Private Member Functions | |
std::vector< String > | getFileNames_ (bool basename) const |
std::vector< unsigned > | getLabels_ () const |
std::vector< unsigned > | getFractions_ () const |
std::map< std::pair< String, unsigned >, unsigned > | pathLabelMapper_ (bool, unsigned(*f)(const ExperimentalDesign::MSFileSectionEntry &)) const |
Generic Mapper (Path, Label) -> f(row) More... | |
void | sort_ () |
void | isValid_ () |
Static Private Member Functions | |
template<typename T > | |
static void | errorIfAlreadyExists (std::set< T > &container, T &item, const String &message) |
Private Attributes | |
MSFileSection | msfile_section_ |
SampleSection | sample_section_ |
Representation of the Experimental Design in OpenMS. Instances can be loaded via the ExperimentalDesignFile class.
The experimental design in OpenMS consists of two sections: 1. FileSection captures the mapping of quantitative values to files and, optionally, to samples. 2. SampleSection captures the experimental factors and conditions associated with a sample.
The FileSection is mandatory while the SampleSection is optional and only required for downstream analysis.
Details on the FileSection:
To unambigously map a single quantitative value we need to define: a. the label (e.g., label = 2 in the case of a heavy peptide in a light/heavy experiment) b. which spectra file did produce the result (e.g., path = "/data/SILAC_file.mzML") c. which fraction the file corresponds to (e.g., fraction = 1) d. a fraction group identifier that groups fractions (e.g., fraction_group = 1) Note: in the case of label-free data, the fraction group identifier has the same cardinality as the sample identifier. (e.) optionally, the sample that has been measured (e.g., sample = 1)
This information is defined in the FileSection and enables fraction aware data processing.
Details on the SampleSection:
To map a sample to conditions / factors we need to define: a. the sample ( e.g., sample = 1) b. multiple columns containing conditions / factors
using MSFileSection = std::vector<MSFileSectionEntry> |
|
default |
ExperimentalDesign | ( | const MSFileSection & | msfile_section, |
const SampleSection & | sample_section | ||
) |
|
staticprivate |
|
static |
Extract experimental design from consensus map.
|
static |
Extract experimental design from feature map.
|
static |
Extract experimental design from identifications.
|
private |
|
private |
std::map<unsigned int, std::vector<String> > getFractionToMSFilesMapping | ( | ) | const |
return fraction index to file paths (ordered by fraction_group)
|
private |
const MSFileSection& getMSFileSection | ( | ) | const |
unsigned getNumberOfFractionGroups | ( | ) | const |
unsigned getNumberOfFractions | ( | ) | const |
unsigned getNumberOfLabels | ( | ) | const |
unsigned getNumberOfMSFiles | ( | ) | const |
unsigned getNumberOfSamples | ( | ) | const |
std::map< std::pair< String, unsigned >, unsigned> getPathLabelToFractionGroupMapping | ( | bool | ) | const |
return <file_path, label> to fraction_group mapping
std::map< std::pair< String, unsigned >, unsigned> getPathLabelToFractionMapping | ( | bool | ) | const |
return <file_path, label> to fraction mapping
std::map< std::pair< String, unsigned >, unsigned> getPathLabelToSampleMapping | ( | bool | ) | const |
return <file_path, label> to sample mapping
unsigned getSample | ( | unsigned | fraction_group, |
unsigned | label = 1 |
||
) |
const ExperimentalDesign::SampleSection& getSampleSection | ( | ) | const |
bool isFractionated | ( | ) | const |
|
private |
|
private |
Generic Mapper (Path, Label) -> f(row)
bool sameNrOfMSFilesPerFraction | ( | ) | const |
void setMSFileSection | ( | const MSFileSection & | msfile_section | ) |
void setSampleSection | ( | const SampleSection & | sample_section | ) |
|
private |
|
private |
|
private |