#stats #csv #lightweight

app ustat

A (small) tool for computing statistics on XSV files

2 unstable releases

0.2.2 Jul 21, 2021
0.2.1 Jul 21, 2021
0.2.0 Jul 20, 2021
0.1.0 Jul 13, 2021

#27 in #stats

MIT and GPL-3.0-only

348 lines


A micro-statistics program (like ministat) written in Rust which computes the sum, mean, median, min, max, standard deviation and a one-way ANOVA of a set of input files.


> cargo install ustat

If you don't have cargo, you can easily install it with:

> curl https://sh.rustup.rs -sSf | sh && source $HOME/.cargo/env
  ustat [OPTIONS] [FILE ...]

Compute statistics for the given input file(s).

Positional arguments:
  file                  The input file(s) to compute statistics for (Use stdin
                        if not specified)

Optional arguments:
  -h,--help             Show this help message and exit
  -c,--column COLUMN    The column(s) to extract data from (Default: 0 for all
                        files, runs from 0 to ...)
  -d,--delimiter DELIMITER
                        The text delimiter character to use between columns
                        (Default: ',')
  -s,--skip-header      Skip the first line of the input file (Default: False)
  --no-anova            Don't compute ANOVA for the input files (one file per
                        population) (Default: False)
  -V,--version          Show version

Examples / Recipes

Compute basic statistics for column 0 of a CSV:

> cat file.csv | ustat

Compute basic statics and an ANOVA for three files (column 0 for each CSV file):

> ustat file_1.csv file_2.csv file_3.csv

Compute basic statistics for a TSV file:

> ustat -d '\t' file_1.tsv

Compute statistics for column 0 of file_1.csv and column 3 of file_2.csv:

> ustat -c 0 -c 3 file_1.csv file_2.csv


~162K SLoC