Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.54 KB | None | 0 0
  1. struct SDFold {
  2. count: u32,
  3. mean: f32,
  4. var_mean: f32,
  5. std_dev: f32,
  6. }
  7.  
  8. fn main() {
  9. let dataset = vec![1, 2, 3, 4, 5, 6, 7, 8, 9];
  10. let sd = dataset.fold(SDFold {
  11. count: 0,
  12. mean: 0,
  13. var_mean: 0,
  14. std_dev: 0,
  15. }, |acc, v| {
  16. let count = acc.count + 1;
  17. let mean = (acc.mean + v) / count;
  18. let var = (v - mean).pow(2);
  19. let var_mean = (acc.var_mean + var) / count;
  20. let std_dev = var_mean.sqrt();
  21. SDFold { count, mean, var_mean, std_dev }
  22. }
  23. )
  24. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement