Updated with Statistics Library

Dependencies:   QEI2 chair_BNO055 PID Watchdog VL53L1X_Filter ros_lib_kinetic

Revision:
28:e01253eb6c6f
Parent:
27:da718b990837
--- a/Statistics/statistics.cpp	Fri Jun 28 21:16:26 2019 +0000
+++ b/Statistics/statistics.cpp	Fri Jun 28 23:52:23 2019 +0000
@@ -1,13 +1,14 @@
 #include "statistics.h"
 #include "mbed.h"
 
-    statistics::statistics(int* Input, int dataLengthIn, int firstDataPoint){
+    statistics::statistics(int* Input, int dataLengthIn, int firstDataPointIn){
         data = Input;
         dataLength = dataLengthIn;
+        firstDataPoint = firstDataPointIn;
         }
     double statistics::mean(){
         double sum;
-        for(int i = 0; i < dataLength; ++i)
+        for(int i = firstDataPoint; i < (firstDataPoint + dataLength); ++i)
         {
             sum += data[i];
         }
@@ -16,19 +17,24 @@
         return average;
     }
     double statistics::stdev(){
-        float sum = 0.0, mean, standardDeviation = 0.0;
+        double sum = 0.0, mean, standardDeviation = 0.0;
+        printf("The length of the array is %d\n", dataLength);
+        //double num = (pow(2.0,2.0));
+        //printf("2^2 is %f\n", num);
+        //int i;
 
-        int i;
-
-        for(int i = 0; i < dataLength; ++i)
+        for(int i = firstDataPoint; i < (firstDataPoint + dataLength); ++i)
         {
             sum += data[i];
+            printf("%d\n", data[i]);
         }
     
         mean = sum/dataLength;
     
-        for(int i = 0; i < dataLength; ++i)
-            standardDeviation += pow(data[i] - mean, 2);
+        for(int i = firstDataPoint; i < (firstDataPoint + dataLength); ++i) {
+            //standardDeviation += pow(data[i] - mean, 2);
+            standardDeviation += (data[i] - mean)*(data[i] - mean);
+            }
     
         return sqrt(standardDeviation / dataLength);
     }