Calculates statistics about input data. This is a wrapper around the Simple Statistics Node library.
Normally, the value of an input property is saved into the data set. The
input property
may also contain an array of values which will be saved into the
data set. If data set size
is greater that 0 then the size of the data set will be
limited to the number of elements specified, with the oldest elements dropped first.
When a message is received with a MQTT format topic that ends with a sub-topic that is a statistical function name, that statistic is calculated and output to the output property. For example, a message with the topic data/mean
would output the mean of the data received so far. Optionally, the function name can be stripped from the topic. For statistical functions that require a parameter, the parameter is passed in using the parameter property.
The functions in the Simple Statistics library that are supported are:
- bernoulliDistribution
- chunk
- ckmeans
- cumulativeStdNormalProbability
- equalIntervalBreaks
- errorFunction
- extent
- factorial
- inverseErrorFunction
- gamma
- geometricMean
- harmonicMean
- interquartileRange
- medianAbsoluteDeviation
- max
- mean
- median
- min
- mode
- poissonDistribution
- probit
- product
- quantile
- quantileRank
- rootMeanSquare
- sample
- sampleWithReplacement
- sampleKurtosis
- sampleSkewness
- sampleStandardDeviation
- shuffle
- standardDeviation
- sum
- sumNthPowerDeviations
- tTest
- uniqueCount
- variance
In addition, three other functions are implemented:
- size - returns the size of the data set
- clear - clears the data set
- dump - dumps the data set in an array
These three functions can also contain a data item or array of data items which are added to the data set before calculating the result for size
or dump
, or after the data set is cleared for clear
.
For more detailed information about the functions see the Simple Statistics API documentation.