describe

Warnung

Das Kommando describe ist eine unstable-Funktion, die sich noch in der Entwicklung befindet und noch nicht in den Releases enthalten ist. Das Kommando kann durch Aktivierung der unstable-Funktion beim Bauen aus den Quellen aktiviert werden.

Mithilfe des Kommandos describe lässt sich die Häufigkeitsverteilung von Unterfeldern ermitteln. Im folgenden Bespiel werden zuerst alle Datensätze aus der Eingabe (DUMP.dat.gz) auf die Satzarten Tpz und Tp1 gefiltert und anschließend auf die Felder, die mit 04 oder 06 beginnen und mit R enden, reduziert. Anschließend werden die Vorkommen der Unterfelder ausgezählt und als Tabelle ausgegeben:

$ pica describe -s -k '0[46].R' tests/data/DUMP.dat.gz --where '002@.0 in ["Tpz", "Tp1"]'
┌───────┬────┬────┬────┬────┬────┬────┬────┬───┐
 field ┆ 0  ┆ 4  ┆ 7  ┆ 9  ┆ A  ┆ V  ┆ a  ┆ b │
╞═══════╪════╪════╪════╪════╪════╪════╪════╪═══╡
 041R  ┆ 16 ┆ 16 ┆ 16 ┆ 16 ┆ 16 ┆ 16 ┆ 16 ┆ 0 │
 060R  ┆ 0  ┆ 4  ┆ 0  ┆ 0  ┆ 0  ┆ 0  ┆ 4  ┆ 4 │
 065R  ┆ 7  ┆ 7  ┆ 7  ┆ 7  ┆ 7  ┆ 7  ┆ 7  ┆ 0 │
└───────┴────┴────┴────┴────┴────┴────┴────┴───┘

Optionen

-s, --skip-invalid
Überspringt jene Zeilen aus der Eingabe, die nicht dekodiert werden konnten.
-p, --progress
Anzeige des Fortschritts, der die Anzahl der eingelesenen gültigen sowie invaliden Datensätze anzeigt. Das Aktivieren der Option erfordert das Schreiben der Datensätze in eine Datei mittels -o bzw. --output.
-i, --ignore-case
Groß- und Kleinschreibung wird bei Vergleichen ignoriert.
--strsim-threshold <value>
Festlegen des Schwellenwerts beim Ähnlichkeitsvergleich von Zeichenketten mittels =*.
-k, --keep
Es werden nur die Felder eines Datensatzes beibehalten, die in der Liste aufgeführt werden.
-d, --discard
Es werden die Felder eines Datensatzes verworfen, die in der Liste aufgeführt werden.
-A <filename>, --allow-list <filename>
Es werden alle Datensätze ignoriert, die nicht explizit in der Positivliste[^1] auftauchen. Werden mehrere Positivlisten angegeben, wird die Mengenvereinigung aus allen Listen gebildet.
-D <filename>, --deny-list <filename>
Es werden alle Datensätze ignoriert, die in der Negativliste auftauchen. Werden mehrere Negativlisten angegeben, wird die Mengenvereinigung aus allen Listen gebildet.
--where <filter>
Angabe eines Filters, der auf die erzeugten Datensätze angewandt wird.
--and <expr>
Hinzufügen eines zusätzlichen Filters mittels der booleschen &&-Verknüpfung. Der ursprüngliche Filterausdruck <filter> wird zum Ausdruck <filter> && <expr>.
--or <expr>
Hinzufügen eines zusätzlichen Filters mittels der booleschen ||-Verknüpfung. Der ursprüngliche Filterausdruck <filter> wird zum Ausdruck <filter> || <expr>.
--not <expr>
Hinzufügen eines zusätzlichen Filters. Der ursprüngliche Filterausdruck <filter> wird zum Ausdruck <filter> && !(<expr>).
-o <filename>, --output <filename>
Angabe, in welche Datei die Ausgabe geschrieben werden soll. Standardmäßig wird die Ausgabe in die Standardausgabe stdout geschrieben. Endet die Datei mit der Endung .csv bzw. .tsv oder ist die Option --csv bzw. --tsv gesetzt, erfolgt die Ausgabe im CSV- bzw. TSV-Format. Standardmäßig erfolgt die Ausgabe im Apache Arrow-Format.