|
OpenMS
2.6.0
|
Go to the documentation of this file.
62 template <
typename ValueType = UInt,
typename BinSizeType =
double>
95 Histogram(BinSizeType min, BinSizeType max, BinSizeType bin_size) :
109 template <
typename DataIterator>
110 Histogram(DataIterator
begin, DataIterator
end, BinSizeType min, BinSizeType max, BinSizeType bin_size) :
116 for (DataIterator it =
begin; it !=
end; ++it)
118 this->
inc((BinSizeType) *it);
145 return *(std::max_element(
bins_.begin(),
bins_.end()));
151 return *(std::min_element(
bins_.begin(),
bins_.end()));
173 if (index >=
bins_.size())
187 if (bin_index >=
bins_.size())
192 return (BinSizeType)(
min_ + ((BinSizeType)bin_index + 0.5) *
bin_size_);
212 Size inc(BinSizeType val, ValueType increment = 1)
215 this->
bins_[bin_index] += increment;
220 Size incUntil(BinSizeType val,
bool inclusive, ValueType increment = 1)
223 for (
Size i = 0; i < bin_index; ++i)
225 this->
bins_[i] += increment;
229 this->
bins_[bin_index] += increment;
234 Size incFrom(BinSizeType val,
bool inclusive, ValueType increment = 1)
237 for (
Size i = bin_index + 1; i < this->
bins_.size(); ++i)
239 this->
bins_[i] += increment;
243 this->
bins_[bin_index] += increment;
248 template<
typename DataIterator >
254 for (DataIterator it =
begin; it !=
end; ++it)
262 histogram.
incFrom(*it, inclusive);
273 void reset(BinSizeType min, BinSizeType max, BinSizeType bin_size)
319 if (&histogram ==
this)
return *
this;
344 for (
typename std::vector<ValueType>::iterator it =
bins_.begin(); it !=
bins_.end(); ++it)
346 *it = (ValueType)(multiplier * log((BinSizeType)(*it + 1.0f)));
367 if (val < min_ || val >
max_)
384 if (this->bin_size_ <= 0)
391 if (this->max_ != this->min_)
397 this->bins_ = std::vector<ValueType>(1, 0);
404 template <
typename ValueType,
typename BinSizeType>
407 for (
Size i = 0; i < hist.
size(); ++i)
409 os << hist.
centerOfBin(i) <<
"\t"<< hist[i] << std::endl;
static void writeHist(const String &out_csv, const std::vector< double > &delta_mzs, const std::vector< double > &mzs, const std::vector< double > &rts)
Writer can be used in association with correctToNearestMS1Peak or correctToHighestIntensityMS1Peak.
Base class for TOPP applications.
Definition: TOPPBase.h:144
Size incUntil(BinSizeType val, bool inclusive, ValueType increment=1)
Definition: Histogram.h:220
Histogram()
default constructor
Definition: Histogram.h:74
BinSizeType centerOfBin(Size bin_index) const
returns the center position of the bin with the index bin_index
Definition: Histogram.h:185
Size incFrom(BinSizeType val, bool inclusive, ValueType increment=1)
Definition: Histogram.h:234
static std::set< Size > correctToNearestMS1Peak(MSExperiment &exp, double mz_tolerance, bool ppm, std::vector< double > &delta_mzs, std::vector< double > &mzs, std::vector< double > &rts)
Selection of the peak in closest proximity as corrected precursor mass in a given mass range (e....
virtual ~Histogram()
destructor
Definition: Histogram.h:124
void store(const String &filename, const PeakMap &map) const
Stores a map in an MzML file.
std::ostream & operator<<(std::ostream &os, const Histogram< ValueType, BinSizeType > &hist)
Print the contents to a stream.
Definition: Histogram.h:405
Histogram(BinSizeType min, BinSizeType max, BinSizeType bin_size)
constructor with min, max and bin size
Definition: Histogram.h:95
File adapter for MzML files.
Definition: MzMLFile.h:55
In-Memory representation of a mass spectrometry experiment.
Definition: MSExperiment.h:77
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:127
static std::set< Size > correctToHighestIntensityMS1Peak(MSExperiment &exp, double mz_tolerance, bool ppm, std::vector< double > &delta_mzs, std::vector< double > &mzs, std::vector< double > &rts)
Selection of the peak with the highest intensity as corrected precursor mass in a given mass range (e...
#define OPENMS_LOG_WARN
Macro if a warning, a piece of information which should be read by the user, should be logged.
Definition: LogStream.h:460
Size size() const
returns the number of bins
Definition: Histogram.h:161
static std::set< Size > correctToNearestFeature(const FeatureMap &features, MSExperiment &exp, double rt_tolerance_s=0.0, double mz_tolerance=0.0, bool ppm=true, bool believe_charge=false, bool keep_original=false, bool all_matching_features=false, int max_trace=2, int debug_level=0)
Reassigns a precursor to the nearest feature in a given rt and mass range. Wrong assignment of the mo...
ConstIterator end() const
Non-mutable iterator pointing after the last bin.
Definition: Histogram.h:338
BinSizeType max_
Upper bound.
Definition: Histogram.h:354
static String concatenate(const std::vector< T > &container, const String &glue="")
Concatenates all elements of the container and puts the glue string between elements.
Definition: ListUtils.h:193
Out of range exception.
Definition: Exception.h:319
std::vector< ValueType > bins_
Vector of bins.
Definition: Histogram.h:358
Histogram(DataIterator begin, DataIterator end, BinSizeType min, BinSizeType max, BinSizeType bin_size)
constructor with data iterator and min, max, bin_size parameters
Definition: Histogram.h:110
Histogram & operator=(const Histogram &histogram)
Assignment.
Definition: Histogram.h:317
Size inc(BinSizeType val, ValueType increment=1)
increases the bin corresponding to value val by increment
Definition: Histogram.h:212
std::vector< ValueType >::const_iterator ConstIterator
Non-mutable iterator of the bins.
Definition: Histogram.h:68
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
BinSizeType min_
Lower bound.
Definition: Histogram.h:352
Representation of a histogram.
Definition: Histogram.h:63
ValueType operator[](Size index) const
returns the value of bin index
Definition: Histogram.h:171
void load(const String &filename, PeakMap &map)
Loads a map from a MzML file. Spectra and chromatograms are sorted by default (this can be disabled u...
Size valToBin_(BinSizeType val) const
Returns the bin a given value belongs to.
Definition: Histogram.h:364
BinSizeType minBound() const
returns the lower bound
Definition: Histogram.h:131
void load(const String &filename, FeatureMap &feature_map)
loads the file with name filename into map and calls updateRanges().
bool operator!=(const Histogram &histogram) const
Inequality operator.
Definition: Histogram.h:311
BinSizeType binSize() const
returns the bin size
Definition: Histogram.h:155
bool operator==(const Histogram &histogram) const
Equality operator.
Definition: Histogram.h:302
Histogram(const Histogram &histogram)
copy constructor
Definition: Histogram.h:82
void initBins_()
initialize the bins
Definition: Histogram.h:382
BinSizeType maxBound() const
returns the upper bound
Definition: Histogram.h:137
static void getCumulativeHistogram(DataIterator begin, DataIterator end, bool complement, bool inclusive, Histogram< ValueType, BinSizeType > &histogram)
Definition: Histogram.h:249
Int overflow exception.
Definition: Exception.h:254
int main(int argc, const char **argv)
Definition: INIFileEditor.cpp:73
ValueType minValue() const
returns the lowest value of all bins
Definition: Histogram.h:149
#define OPENMS_LOG_ERROR
Macro to be used if non-fatal error are reported (processing continues)
Definition: LogStream.h:455
ValueType binValue(BinSizeType val) const
returns the value of bin corresponding to the value val
Definition: Histogram.h:200
A container for features.
Definition: FeatureMap.h:97
BinSizeType bin_size_
Bin size.
Definition: Histogram.h:356
This class provides Input/Output functionality for feature maps.
Definition: FeatureXMLFile.h:68
#define OPENMS_LOG_INFO
Macro if a information, e.g. a status should be reported.
Definition: LogStream.h:465
ConstIterator begin() const
Non-mutable iterator pointing to the first bin.
Definition: Histogram.h:335
void applyLogTransformation(BinSizeType multiplier)
Transforms the bin values with f(x)=multiplier*log(x+1)
Definition: Histogram.h:342
void reset(BinSizeType min, BinSizeType max, BinSizeType bin_size)
resets the histogram with the given range and bin size
Definition: Histogram.h:273
static const std::string csv_header
Definition: PrecursorCorrection.h:68
ValueType maxValue() const
returns the highest value of all bins
Definition: Histogram.h:143