(effect: &BTreeMap<usize, f64>)
| 277 | } |
| 278 | |
| 279 | fn normalize_usize_map(effect: &BTreeMap<usize, f64>) -> BTreeMap<usize, f64> { |
| 280 | let sum: f64 = effect.values().sum(); |
| 281 | if sum == 0.0 { |
| 282 | return effect.keys().map(|k| (*k, 0.0)).collect(); |
| 283 | } |
| 284 | effect.iter().map(|(k, v)| (*k, *v / sum)).collect() |
| 285 | } |
| 286 | |
| 287 | fn normalize_string_map(effect: &BTreeMap<String, f64>) -> BTreeMap<String, f64> { |
| 288 | let sum: f64 = effect.values().sum(); |