csvtk
csvtk copied to clipboard
Allow `summary` to specify fields fuzzily like with other subcommands
Prerequisites
- [x] make sure you're are using the latest version by
csvtk version
¡ csvtk version
csvtk v0.30.0
- [x] read the usage
Describe your issue
- [x] describe the problem
- [x] provide a reproducible example
I wanted to get the max of every column in a wide dataset with csvtk summary, but had to specify each column by hand. I think being able to use fuzzy field (and operator!) matches would be pretty cool. Some examples:
# Give the max for every column.
¡ echo -e 'a,b,c\n1,2,3\n4,5,6\n7,8,9' | csvtk summary -f "*:max"
[ERRO] column "*" not existed in file: -
# What I need to manually do to make it work
¡ echo -e 'a,b,c\n1,2,3\n4,5,6\n7,8,9' | csvtk summary -f a:max -f b:max -f c:max
a:max,b:max,c:max
7.00,8.00,9.00
# Provide all summaries for column a
¡ echo -e 'a,b,c\n1,2,3\n4,5,6\n7,8,9' | csvtk summary -f "a:*"
[ERRO] invalid operation: *. run "csvtk summary --help" for help
# Provide all summaries for all columns
¡ echo -e 'a,b,c\n1,2,3\n4,5,6\n7,8,9' | csvtk summary -f "*:*"
[ERRO] invalid operation: *. run "csvtk summary --help" for help
Thank you
Thanks so much for this great tool! It's already helping me out a lot in my workflow :).
Sorry, I'm very busy recently. Let's leave it open for the future.
Sorry, I'm very busy recently. Let's leave it open for the future.
no problem of course! if it bothers me enough i'll try and implement it myself and send a PR 👌