pub trait FeatureEvaluator<T: Float>:
FeatureNamesDescriptionsTrait
+ EvaluatorInfoTrait
+ Send
+ Clone
+ Debug
+ Serialize
+ DeserializeOwned
+ JsonSchema {
// Required method
fn eval(&self, ts: &mut TimeSeries<'_, T>) -> Result<Vec<T>, EvaluatorError>;
// Provided methods
fn eval_or_fill(&self, ts: &mut TimeSeries<'_, T>, fill_value: T) -> Vec<T> { ... }
fn check_ts_length(
&self,
ts: &TimeSeries<'_, T>,
) -> Result<usize, EvaluatorError> { ... }
}
Expand description
The trait each feature should implement
Required Methods§
Sourcefn eval(&self, ts: &mut TimeSeries<'_, T>) -> Result<Vec<T>, EvaluatorError>
fn eval(&self, ts: &mut TimeSeries<'_, T>) -> Result<Vec<T>, EvaluatorError>
Vector of feature values or EvaluatorError
Provided Methods§
Sourcefn eval_or_fill(&self, ts: &mut TimeSeries<'_, T>, fill_value: T) -> Vec<T>
fn eval_or_fill(&self, ts: &mut TimeSeries<'_, T>, fill_value: T) -> Vec<T>
Returns vector of feature values and fill invalid components with given value
Sourcefn check_ts_length(
&self,
ts: &TimeSeries<'_, T>,
) -> Result<usize, EvaluatorError>
fn check_ts_length( &self, ts: &TimeSeries<'_, T>, ) -> Result<usize, EvaluatorError>
Checks if TimeSeries has enough points to evaluate the feature
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.