sample_midpoint - bruno-beloff/scs_analysis GitHub Wiki
docs > software repositories > scs_analysis > commands > filtering and aggregating data
DESCRIPTION
The sample_midpoint utility computes a linear regression for a stream of data delivered on stdin, it then finds the midpoint y value. This is similar to an averaging function, but is independent of sampling jitter.
Input data is typically in the form of a JSON document. A command parameter specifies the path to the node within the document that is to be averaged. The node is typically a leaf node integer or float. The output of the sample_midpoint utility includes the source value, and the midpoint value.
SYNOPSIS
sample_midpoint.py [-t TALLY] [-p PRECISION] [-v] [PATH]
Options | |
---|---|
--version | show program's version number and exit |
-h, --help | show this help message and exit |
-t TALLY, --tally=TALLY | generate a rolling aggregate for TALLY number of data points (default all) |
-p PRECISION, --prec=PRECISION | precision (default 0 decimal places) |
-v, --verbose | report narrative to stderr |
EXAMPLES
aws_topic_history.py -m60 /orgs/south-coast-science-demo/brighton/loc/1/gases | ./sample_midpoint.py -t360 -p1 val.CO.cnc
DOCUMENT EXAMPLE - INPUT
{"tag": "scs-bgx-401", "rec": "2018-03-27T09:54:41.042+00:00", "val": {"NO2": {"weV": 0.29563, "aeV": 0.280879, "weC": 0.009569, "cnc": 61.0},"Ox": {"weV": 0.406819, "aeV": 0.387443, "weC": -0.010706, "cnc": 34.7}, "NO": {"weV": 0.319692, "aeV": 0.292129, "weC": 0.028952, "cnc": 165.5}, "CO": {"weV": 0.395819, "aeV": 0.289317, "weC": 0.113108, "cnc": 311.3}, "sht": {"hmd": 82.4, "tmp": 12.6}}}
DOCUMENT EXAMPLE - OUTPUT
{"rec": "2018-03-27T16:14:01.033+00:00", "mid-rec": "2018-03-27T15:44:06.000+00:00", "val": {"CO": {"cnc": {"src": 359.0, "mid": 296.5}}}}