nushell/docs/commands/sum.md

1.3 KiB

sum This command allows you to calculate the sum of values in a column. ## Examples

To get the sum of the file sizes in a directory, simply pipe the size column from the ls command to the sum command.

> ls | get size | sum
━━━━━━━━━
 value
━━━━━━━━━
 51.0 MB
━━━━━━━━━

To get the sum of the characters in your present working directory.

> pwd | split-row / | size | get chars | sum
━━━━━━━━━
 <value>
━━━━━━━━━
21
━━━━━━━━━

Note that sum only works for integer and byte values at the moment, and if the shell doesn't recognize the values in a column as one of those types, it will return an error. One way to solve this is to convert each row to an integer and then pipe the result to sum

> open tests/fixtures/formats/caco3_plastics.csv | get tariff_item | average
error: Unrecognized type in stream: Primitive(String("2509000000"))
- shell:1:0
1 | open tests/fixtures/formats/caco3_plastics.csv | get tariff_item | sum
  | ^^^^ source
> open tests/fixtures/formats/caco3_plastics.csv | get tariff_item | str --to-int | sum
━━━━━━━━━━━━━
 <value>
─────────────
 29154639996
━━━━━━━━━━━━━