scran_markers
Marker detection for single-cell data
Loading...
Searching...
No Matches
summarize_effects.hpp
Go to the documentation of this file.
1#ifndef SCRAN_MARKERS_SUMMARIZE_EFFECTS_HPP
2#define SCRAN_MARKERS_SUMMARIZE_EFFECTS_HPP
3
4#include <vector>
5#include <cstddef>
6
8#include "utils.hpp"
9
15namespace scran_markers {
16
25 int num_threads = 1;
26
31 bool compute_min = true;
32
37 bool compute_mean = true;
38
43 bool compute_median = true;
44
49 bool compute_max = true;
50
55 bool compute_min_rank = true;
56
62 std::optional<std::vector<double> > compute_quantiles;
63
69 bool min_rank_preserve_ties = false;
70};
71
133template<typename Gene_, typename Stat_, typename Rank_>
135 const Gene_ ngenes,
136 const std::size_t ngroups,
137 const Stat_* const effects,
138 const std::vector<SummaryBuffers<Stat_, Rank_> >& summaries,
139 const SummarizeEffectsOptions& options
140) {
141 internal::compute_min_rank_pairwise(ngenes, ngroups, effects, summaries, options.min_rank_preserve_ties, options.num_threads);
142 internal::validate_quantiles(options.compute_quantiles);
143 internal::summarize_comparisons(ngenes, ngroups, effects, options.compute_quantiles, summaries, options.num_threads);
144}
145
162template<typename Stat_ = double, typename Rank_ = int, typename Gene_>
163std::vector<SummaryResults<Stat_, Rank_> > summarize_effects(
164 const Gene_ ngenes,
165 const std::size_t ngroups,
166 const Stat_* const effects,
167 const SummarizeEffectsOptions& options
168) {
169 std::vector<SummaryResults<Stat_, Rank_> > output;
170 const auto ptrs = internal::fill_summary_results(
171 ngenes,
172 ngroups,
173 output,
174 options.compute_min,
175 options.compute_mean,
176 options.compute_median,
177 options.compute_max,
178 options.compute_quantiles,
179 options.compute_min_rank
180 );
181 summarize_effects(ngenes, ngroups, effects, ptrs, options);
182 return output;
183}
184
185}
186
187#endif
Marker detection for single-cell data.
Definition score_markers_pairwise.hpp:26
void summarize_effects(const Gene_ ngenes, const std::size_t ngroups, const Stat_ *const effects, const std::vector< SummaryBuffers< Stat_, Rank_ > > &summaries, const SummarizeEffectsOptions &options)
Definition summarize_effects.hpp:134
Options for summarize_effects().
Definition summarize_effects.hpp:20
int num_threads
Definition summarize_effects.hpp:25
bool compute_median
Definition summarize_effects.hpp:43
bool compute_mean
Definition summarize_effects.hpp:37
bool compute_min_rank
Definition summarize_effects.hpp:55
bool compute_max
Definition summarize_effects.hpp:49
bool compute_min
Definition summarize_effects.hpp:31
Pointers to arrays to hold the summary statistics.
Definition summarize_comparisons.hpp:32
Utilities for effect summarization.