#science

hampel

使用汉普尔标识符进行顺序异常值检测和移除

3个不稳定版本

0.2.0 2024年7月20日
0.1.1 2022年9月26日
0.1.0 2022年5月11日

#893 in 数学

Download history 119/week @ 2024-07-19 24/week @ 2024-07-26

每月143次下载

MIT/Apache

135KB
77

hampel

使用汉普尔标识符进行顺序异常值检测和移除。

它支持 f32f64

使用方法

将此添加到您的 Cargo.toml

[dependencies]
hampel = "0.2"
#features = ["extrapolation"]  <-- At your option

extrapolation 功能

当此功能启用时,在检测到异常值时将返回线性外推值。如果没有启用,则返回窗口的中值。

示例

use hampel::Window;

fn main() {
    // Window size: 5 (>= 3)
    // Initialization value of window: 0.0
    // Threshold: Median of the window ±3σ.
    let mut filter = Window::<f64, 5>::new(0.0, 3.0);
    
    let input_vals = [0.0; 100];  // <- Containing outliers
    let mut filtered_vals = [0.0; 100];
    for (i, val) in input_vals.iter().enumerate() {
        filtered_vals[i] = filter.update(*val);
    }
    // filtered_vals <-- Outliers have been removed
}

示例图像

sample1

sample2

许可证

根据您的选择,许可为Apache许可证版本2.0MIT许可证

贡献

除非您明确声明,否则您有意提交的任何贡献,根据Apache-2.0许可证定义,应按上述方式双重许可,不附加任何额外条款或条件。

依赖项