Signature Description Parameters
#include <DataFrame/DataFrameFinancialVisitors.h>

template<typename T, typename I = unsigned long,
         std::size_t A = 0>
struct NonZeroRangeVisitor;

// -------------------------------------

template<typename T, typename I = unsigned long,
         std::size_t A = 0>
using nzr_v = NonZeroRangeVisitor<T, I, A>;
        
This is a “single action visitor”, meaning it is passed the whole data vector in one call and you must use the single_act_visit() interface.

This functor calculates the difference between the two given columns (i.e., vectors). If any of the differences results in a zero, every item in the result will be raised by an epsilon.
T: Column data type.
I: Index type.
A: Memory alignment boundary for vectors. Default is system default alignment

C++ DataFrame