INNER CODE UNIT · Rust
std_deviation
bluenote-1577/skani · src/chain.rs:39
fn std_deviation(data: &[f64]) -> f64 {
let count = data.len();
let data_mean = mean(&data);
if data_mean.is_none(){
return 0.
}
else{
let data_mean = data_mean.unwrap();
let variance = data.iter().map(|value| {
let diff = data_mean - (*value);
diff * diff
}).sum::<f64>() / count as f64;
variance.sqrt()
}
}