(values: &[f64])
| 375 | } |
| 376 | |
| 377 | fn std_dev(values: &[f64]) -> f64 { |
| 378 | if values.len() < 2 { |
| 379 | return 0.0; |
| 380 | } |
| 381 | let mean = values.iter().sum::<f64>() / values.len() as f64; |
| 382 | let mut ss = 0.0; |
| 383 | for v in values { |
| 384 | let d = *v - mean; |
| 385 | ss += d * d; |
| 386 | } |
| 387 | (ss / (values.len() as f64 - 1.0)).sqrt() |
| 388 | } |
| 389 | |
| 390 | fn median_sorted(sorted: &[f64]) -> f64 { |
| 391 | let n = sorted.len(); |
no test coverage detected