Menu

Tree [5d2259] master /
 History

HTTPS access


File Date Author Commit
 LICENSE.txt 2013-03-13 Tommaso Cucinotta Tommaso Cucinotta [c1362e] First import into git repo.
 Makefile 2018-09-20 Tommaso Cucinotta Tommaso Cucinotta [6f9793] added -std=c++11 for older 4.8.x g++ compiler
 README.txt 2018-08-22 Tommaso Cucinotta Tommaso Cucinotta [cc3a9a] we're in 2018 now
 datastat.1 2018-01-10 Tommaso Cucinotta Tommaso Cucinotta [d62e7e] quartile options now in manpage
 datastat.cpp 2019-03-06 Tommaso Cucinotta Tommaso Cucinotta [5d2259] parse also quoted numbers (""), besides unquote...
 test01.sh 2018-09-10 Tommaso Cucinotta Tommaso Cucinotta [72d207] primitive automated testing framework
 test01.txt 2013-12-28 Alan Barton Alan Barton [a45777] Patch for computing quartiles (2nd quartile is ...
 test02.sh 2018-09-10 Tommaso Cucinotta Tommaso Cucinotta [72d207] primitive automated testing framework
 test02.txt 2018-08-22 Tommaso Cucinotta Tommaso Cucinotta [60f015] code refactory, commonalized code paths when us...
 test03.sh 2018-09-10 Tommaso Cucinotta Tommaso Cucinotta [72d207] primitive automated testing framework
 test04.sh 2018-09-10 Tommaso Cucinotta Tommaso Cucinotta [d6c420] automated simple baseline tests
 test05.sh 2018-09-10 Tommaso Cucinotta Tommaso Cucinotta [d6c420] automated simple baseline tests

Read Me

datastat - Simple command-line data statistics
           Copyright 2011-2019 by Tommaso Cucinotta
           firstname dot lastname at gmail dot com
======================================================================
datastat is an open-source command-line tool that allows one to
compute simple statistics over columns of numeric data in text files
by aggregating rows on the basis of the values of specified key
columns.

The simplest usage of the tool is to compute the average of all
columns in a file with many rows. For example:

  datastat myfile.dat

will produce on the standard output a single row, containing as many
columns as in the input file, and with each value being the average of
all the values in the corresponding column. If one wanted also the
standard deviation, then

  datastat --dev myfile.dat

would provide an output file where, for each input file column, there
are two output values, one with the average and the following one with
the standard deviation of all the values in that column.

A more complex usage is when you need to aggregate data in the input
file based on some key columns. For example, the input file contains 3
columns with the first two columns being configuration options for some
experiment, and the third column being the actual output of the
experimentation. The file may have many such rows, with repeated
entries per configuration. The user would like to compute the average
values aggregated depending on the first configuration parameter:

  datastat -k 1-2 myfile.dat

This will produce an output with multiple rows, one for each value
pairs within the first two columns of the input file, and for each row
one can find the average of each configuration on the third column.

Other statistics that can be easily computed over all the values
within a column, or all the values within each key value set, include
the standard deviation, the minimum, the maximum and the elements
count.

datastat has been purposedly kept at a minimum of functionality. Its
power resides in pipe-ing it with other common UNIX tools for
column-based numeric table processing, including grep, sed, cut,
paste, awk and sort. Ultimately, it may be extremely useful to use
datastat in combination with said tools in a GNUplot plotting script.


License of use
======================================================================
datastat is provided under the GPLv3 license. See LICENSE.txt for
details.
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.