pycytominer
pycytominer copied to clipboard
[Enhancement] Expose primary functions (annotate, feature_select, etc.) as CLI commands
For the purposes of integrating pycytominer into data pipelines like Nextflow it would be great if core functionality could be exposed via a CLI. The quickest way to implement this in my view would be via Google's python fire which can quickly convert functions/modules into CLIs using just the argument names and docstrings.
Suggested implementation:
- [ ] Create shared wrapper that can launch each of the core functions
- [ ] Implement logic for reading in population_df/profiles from file.
- [ ] Implement logic for reading in features from file
Questions:
- Do any input formats need to be supported besides
csv
csv.gz
andparquet
?
To avoid an excessively large PR, I suggest a minimal-viable-product style implementation to start. This could mean that perhaps we don't expose certain lesser-used or difficult-to-implement function arguments to start. Once something working has been integrated, then we can circle back and add them in a follow-up round.