Trait light_curve_feature::FeatureEvaluator[][src]

pub trait FeatureEvaluator<T: Float>: Send + Clone + Debug + Serialize + DeserializeOwned + JsonSchema {
    fn eval(&self, ts: &mut TimeSeries<'_, T>) -> Result<Vec<T>, EvaluatorError>;
fn get_info(&self) -> &EvaluatorInfo;
fn get_names(&self) -> Vec<&str>;
fn get_descriptions(&self) -> Vec<&str>; fn eval_or_fill(&self, ts: &mut TimeSeries<'_, T>, fill_value: T) -> Vec<T> { ... }
fn size_hint(&self) -> usize { ... }
fn min_ts_length(&self) -> usize { ... }
fn is_t_required(&self) -> bool { ... }
fn is_m_required(&self) -> bool { ... }
fn is_w_required(&self) -> bool { ... }
fn is_sorting_required(&self) -> bool { ... }
fn check_ts_length(
        &self,
        ts: &TimeSeries<'_, T>
    ) -> Result<usize, EvaluatorError> { ... } }
Expand description

The trait each feature should implement

Required methods

Should return the vector of feature values or EvaluatorError

Get feature evaluator meta-information

Should return the vector of feature names. The length and feature order should correspond to eval() output

Should return the vector of feature descriptions. The length and feature order should correspond to eval() output

Provided methods

Should return the vector of feature values and fill invalid components with given value

Should return the size of vectors returned by eval() and get_names()

Should return minimum time series length to successfully find feature value

Implementors