1#ifndef SCRAN_NORM_CENTER_SPIKE_IN_FACTORS_HPP
2#define SCRAN_NORM_CENTER_SPIKE_IN_FACTORS_HPP
57template<
typename SizeFactor_>
59 const std::size_t num,
60 SizeFactor_*
const endogenous,
61 const std::vector<SizeFactor_*>& spike_ins,
69 const auto num_spikes = spike_ins.size();
71 for (I<
decltype(num_spikes)> i = 0; i < num_spikes; ++i) {
72 if (use_diagnostics) {
129template<
typename SizeFactor_,
typename Block_>
131 const std::size_t num,
132 SizeFactor_*
const endogenous,
133 const std::vector<SizeFactor_*>& spike_ins,
134 const Block_*
const block,
144 cent_opt.
block_mode = CenterBlockMode::CUSTOM;
146 const auto num_spikes = spike_ins.size();
149 for (I<
decltype(num_spikes)> i = 0; i < num_spikes; ++i) {
150 if (use_diagnostics) {
Center size factors prior to scaling normalization.
Scaling normalization of single-cell data.
Definition center_size_factors.hpp:20
std::vector< SizeFactor_ > center_size_factors_blocked(const std::size_t num, SizeFactor_ *const size_factors, const Block_ *const block, const CenterSizeFactorsBlockedOptions &options)
Definition center_size_factors.hpp:294
CenterBlockMode
Definition center_size_factors.hpp:219
SizeFactor_ center_size_factors(const std::size_t num, SizeFactor_ *const size_factors, const CenterSizeFactorsOptions &options)
Definition center_size_factors.hpp:194
void center_spike_in_factors(const std::size_t num, SizeFactor_ *const endogenous, const std::vector< SizeFactor_ * > &spike_ins, const CenterSpikeInFactorsOptions &options)
Definition center_spike_in_factors.hpp:58
std::vector< SizeFactor_ > center_spike_in_factors_blocked(const std::size_t num, SizeFactor_ *const endogenous, const std::vector< SizeFactor_ * > &spike_ins, const Block_ *const block, const CenterSpikeInFactorsBlockedOptions &options)
Definition center_spike_in_factors.hpp:130
Options for center_size_factors_blocked().
Definition center_size_factors.hpp:224
std::optional< std::vector< double > > custom_centers
Definition center_size_factors.hpp:266
CenterBlockMode block_mode
Definition center_size_factors.hpp:260
bool ignore_invalid
Definition center_size_factors.hpp:229
SizeFactorDiagnostics * diagnostics
Definition center_size_factors.hpp:235
bool report_final
Definition center_size_factors.hpp:272
Options for center_size_factors().
Definition center_size_factors.hpp:146
bool ignore_invalid
Definition center_size_factors.hpp:155
SizeFactorDiagnostics * diagnostics
Definition center_size_factors.hpp:168
Options for center_spike_in_factors_blocked().
Definition center_spike_in_factors.hpp:82
SizeFactorDiagnostics * endogenous_diagnostics
Definition center_spike_in_factors.hpp:92
std::vector< SizeFactorDiagnostics * > spike_in_diagnostics
Definition center_spike_in_factors.hpp:100
bool ignore_invalid
Definition center_spike_in_factors.hpp:86
CenterBlockMode block_mode
Definition center_spike_in_factors.hpp:105
Options for center_spike_in_factors().
Definition center_spike_in_factors.hpp:17
std::vector< SizeFactorDiagnostics * > spike_in_diagnostics
Definition center_spike_in_factors.hpp:35
SizeFactorDiagnostics * endogenous_diagnostics
Definition center_spike_in_factors.hpp:27
bool ignore_invalid
Definition center_spike_in_factors.hpp:21
Diagnostics for the size factors.
Definition sanitize_size_factors.hpp:20