Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qiime2 Version - not able to do multiple states #68

Open
callaband opened this issue May 9, 2023 · 3 comments
Open

Qiime2 Version - not able to do multiple states #68

callaband opened this issue May 9, 2023 · 3 comments
Labels
enhancement New feature or request

Comments

@callaband
Copy link

Working on doing CTF using the qiime2 CLI, but got an error I don't quite understand.

!qiime gemelli ctf \
    --i-table  ../data/Microbiome/pool_filtered/RPCA/gemelli_filtered.qza \
    --m-sample-metadata-file ../data/Microbiome/14577_fixed.txt \
    --m-feature-metadata-file ../../shotgun_scripts/woltka_v2_taxonomy.qza \
    --p-state-column timepoint_number \
    --p-state-column timepoint_group \
    --p-individual-id-column marmoset_id \
    --output-dir ../data/Microbiome/pool_filtered/ctf-results

Error: (1/1?) Option '--p-state-column' was specified multiple times in the command.

But...

 --p-state-column TEXT  Metadata column containing state (e.g.,Time,
                         BodySite) across which samples are paired. At least
                         one is required but up to four are allowed by other
                         state inputs.                              [required]

So how do I specify more than one state?
--p-state-column timepoint_number,timepoint_group \
also did not work.

@gibsramen dug into this a bit, but sounds like it might not actually allow multiple states

@gibsramen
Copy link
Contributor

I think this line:

[state_column],

is intended to allow multiple states but there does not seem to be a way to pass multiple states in that are coerced properly. I think a possible solution is to first check if the parameter passed to state_column is a list or a string and proceed accordingly. I am not sure how this could be integrated into Q2 as I don't know how they handled multiple arguments for the same parameter.

@cameronmartino
Copy link
Collaborator

Thanks @callaband & @gibsramen. I think this is just a case of a maybe poorly worded parameter that is passed across the Q2 and standalone commands. The QIIME2 frame can not have variable outputs (from what I know) so there can not be variable state inputs. So what you are trying in QIIME2 is currently not possible in the current framework. The standalone command can do multiple states and will output variable outputs based on that.

@cameronmartino cameronmartino added the enhancement New feature or request label May 11, 2023
@gibsramen
Copy link
Contributor

Excellent, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants