Updated with Statistics Library

Dependencies:   QEI2 chair_BNO055 PID Watchdog VL53L1X_Filter ros_lib_kinetic

Committer:
t1jain
Date:
Fri Jun 28 23:52:23 2019 +0000
Revision:
28:e01253eb6c6f
Parent:
27:da718b990837
Updated with Statistics Library

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jvfausto 27:da718b990837 1 #include "statistics.h"
jvfausto 27:da718b990837 2 #include "mbed.h"
jvfausto 27:da718b990837 3
t1jain 28:e01253eb6c6f 4 statistics::statistics(int* Input, int dataLengthIn, int firstDataPointIn){
jvfausto 27:da718b990837 5 data = Input;
jvfausto 27:da718b990837 6 dataLength = dataLengthIn;
t1jain 28:e01253eb6c6f 7 firstDataPoint = firstDataPointIn;
jvfausto 27:da718b990837 8 }
jvfausto 27:da718b990837 9 double statistics::mean(){
jvfausto 27:da718b990837 10 double sum;
t1jain 28:e01253eb6c6f 11 for(int i = firstDataPoint; i < (firstDataPoint + dataLength); ++i)
jvfausto 27:da718b990837 12 {
jvfausto 27:da718b990837 13 sum += data[i];
jvfausto 27:da718b990837 14 }
jvfausto 27:da718b990837 15
jvfausto 27:da718b990837 16 double average = sum/dataLength;
jvfausto 27:da718b990837 17 return average;
jvfausto 27:da718b990837 18 }
jvfausto 27:da718b990837 19 double statistics::stdev(){
t1jain 28:e01253eb6c6f 20 double sum = 0.0, mean, standardDeviation = 0.0;
t1jain 28:e01253eb6c6f 21 printf("The length of the array is %d\n", dataLength);
t1jain 28:e01253eb6c6f 22 //double num = (pow(2.0,2.0));
t1jain 28:e01253eb6c6f 23 //printf("2^2 is %f\n", num);
t1jain 28:e01253eb6c6f 24 //int i;
jvfausto 27:da718b990837 25
t1jain 28:e01253eb6c6f 26 for(int i = firstDataPoint; i < (firstDataPoint + dataLength); ++i)
jvfausto 27:da718b990837 27 {
jvfausto 27:da718b990837 28 sum += data[i];
t1jain 28:e01253eb6c6f 29 printf("%d\n", data[i]);
jvfausto 27:da718b990837 30 }
jvfausto 27:da718b990837 31
jvfausto 27:da718b990837 32 mean = sum/dataLength;
jvfausto 27:da718b990837 33
t1jain 28:e01253eb6c6f 34 for(int i = firstDataPoint; i < (firstDataPoint + dataLength); ++i) {
t1jain 28:e01253eb6c6f 35 //standardDeviation += pow(data[i] - mean, 2);
t1jain 28:e01253eb6c6f 36 standardDeviation += (data[i] - mean)*(data[i] - mean);
t1jain 28:e01253eb6c6f 37 }
jvfausto 27:da718b990837 38
jvfausto 27:da718b990837 39 return sqrt(standardDeviation / dataLength);
jvfausto 27:da718b990837 40 }