count

Count items in a map, list or array

Description

Usage

<stdin> -> count [ --duplications | --unique | --total ] -> <stdout>

Examples

Count number of items in a map, list or array:

» tout json (["a", "b", "c"]) -> count 
3

Flags

Detail

If no flags are set, count will default to using --total.

Total: --total / -t

This will read an array, list or map from stdin and output the length for that array.

» a [25-Dec-2020..05-Jan-2021] -> count 
12

This also replaces the older len method.

Please note that this returns the length of the array rather than string. For example out "foobar" -> count would return 1 because an array in the str data type would be new line separated (eg out "foo\nbar" -> count would return 2). If you need to count characters in a string and are running POSIX (eg Linux / BSD / OSX) then it is recommended to use wc instead. But be mindful that wc will also count new line characters.

» out "foobar" -> count
1

» out "foo\nbar" -> count
2

» out "foobar" -> wc: -c
7

» out "foo\nbar" -> wc: -c
8

» printf "foobar" -> wc: -c
6
# (printf does not print a trailing new line)

Duplications: --duplications / -d

This returns a JSON map of items and the number of their occurrences in a list or array.

For example in the quote below, only the word “the” is repeated so that entry will have a value of 2 while ever other entry has a value of 1 because they only appear once in the quote.

» out "the quick brown fox jumped over the lazy dog" -> jsplit \s -> count --duplications
{
    "brown": 1,
    "dog": 1,
    "fox": 1,
    "jumped": 1,
    "lazy": 1,
    "over": 1,
    "quick": 1,
    "the": 2
}

Unique: --unique / -u

Returns the number of unique elements in a list or array.

For example in the quote below, only the word “the” is repeated, thus the unique count should be one less than the total count:

» out "the quick brown fox jumped over the lazy dog" -> jsplit \s -> count --unique
8
» out "the quick brown fox jumped over the lazy dog" -> jsplit \s -> count --total
9

Synonyms

See Also


This document was generated from builtins/core/datatools/count_doc.yaml.

This site's content is rebuilt automatically from murex's source code after each merge to the master branch. Downloadable murex binaries are also built with the website.

Last built on Thu Aug 15 14:38:34 UTC 2024 against commit 50ed9d650ed9d6df391240d3c2c02e623636e508dfcdad1.

Current version is 6.2.4000 which has been verified against tests cases.