Aldex2 Error: Not Recognizing Condition

I am really happy you are getting Aldex2 up and running @dgiguer

The results indicate that I don’t have a condition defined and the --help vs. the tutorial files are not lining up. There is a divergence between the --help commands vs. the library.qiime2.org tutorial. Here is my code and error (not recognizing the category)

(qiime2-2019.7) pmrubine-u01dx:Gneiss kristinaadmin$ qiime aldex2 aldex2 --i-table filteredtable.qza --m-metadata-file DVSMetadata.txt --m-metadata-column Combined --p-test glm --p-denom iqlr --output-dir FeedAldex2 --verbose

Traceback (most recent call last):

File “/Users/kristinaadmin/miniconda2/envs/qiime2-2019.7/lib/python3.6/site-packages/q2cli/commands.py”, line 327, in call

results = action(**arguments)

TypeError: aldex2() missing 1 required positional argument: ‘condition’

Plugin error from aldex2:

aldex2() missing 1 required positional argument: 'condition’

In the --help file, I did just those directions. Using the tutorial…I get…(feed=combined)

See above for debug info.
(qiime2-2019.7) pmrubine-u01dx:Gneiss kristinaadmin$ qiime aldex2 aldex2 --i-table filteredtable.qza --m-metadata-file DVSMetadata.txt --p-condition Feed --output-dir FeedAldex2 --verbose
Usage: qiime aldex2 aldex2 [OPTIONS]

Performs log-ratio transformation and statistical testing

Inputs:
–i-table ARTIFACT FeatureTable[Frequency]
The feature table of abundances [required]
Parameters:
–m-metadata-file METADATA
–m-metadata-column COLUMN MetadataColumn[Categorical]
The “condition”: this column will be used as an
experimental descriptor to group samples [required]
–p-mc-samples INTEGER The number of monte carlo samples to be used
[default: 128]
–p-test TEXT The statistical test to run
Choices(‘t’, ‘glm’) [default: ‘t’]
–p-denom TEXT Choices(‘all’, ‘iqlr’)
The features used to decide a reference frame
[default: ‘all’]
Outputs:
–o-differentials ARTIFACT FeatureData[Differential]
The estimated per-feature differentials [required]
Miscellaneous:
–output-dir PATH Output unspecified results to a directory
–verbose / --quiet Display verbose output to stdout and/or stderr
during execution of this action. Or silence output
if execution is successful (silence is golden).
–citations Show citations and exit.
–help Show this message and exit.

                There was a problem with the command:                     

(1/1?) no such option: --p-condition
(qiime2-2019.7) pmrubine-u01dx:Gneiss kristinaadmin$

See above for debug info.

So, there is a disparity and I don’t know how to resolve this as the github documentation is not great either (same error). I think this is an amazing plugin and I look forward to your feedback.

1 Like

Hi @Kristina_Feye! Not the developer of q2-aldex2, but just curious, what version of q2-aldex2 are you running?

conda list q2-aldex2

On my my machine, I have q2-aldex2 0.1.0. The tutorial fails for me, but in basically the opposite manner:

qiime aldex2 aldex2 \
    --i-table gut-table.qza \
    --m-metadata-file sample-metadata.tsv \
    --m-metadata-column subject \
    --output-dir gut-test

Usage: qiime aldex2 aldex2 [OPTIONS]

  Performs log-ratio transformation and statistical testing

Inputs:
  --i-table ARTIFACT FeatureTable[Frequency]
                          The feature table of abundances.          [required]
Parameters:
  --m-metadata-file METADATA...
    (multiple arguments   Sample metadata
     will be merged)                                                [required]
  --p-condition TEXT      Experimental descriptors to group samples [required]
  --p-mc-samples INTEGER  The number of monte carlo samples to be used
                                                                [default: 128]
  --p-test TEXT           The statistical test to run, options include `t`,
                          or `glm`                              [default: 't']
  --p-denom TEXT          The features used to decide a reference frame.
                                                              [default: 'all']
Outputs:
  --o-differentials ARTIFACT FeatureData[Differential]
                          The estimated per-feature differentials.  [required]
Miscellaneous:
  --output-dir PATH       Output unspecified results to a directory
  --verbose / --quiet     Display verbose output to stdout and/or stderr
                          during execution of this action. Or silence output
                          if execution is successful (silence is golden).
  --citations             Show citations and exit.
  --help                  Show this message and exit.

                    There was a problem with the command:                     
 (1/1?) no such option: --m-metadata-column

Either way, it looks like @dgiguer might need a few days to get things sorted out so that the QIIME 2 plugin matches the aldex2 API, and that the Library Tutorial uses the right version, too. I suspect that @dgiguer will need to release a new conda build for q2-aldex2, but not sure about that.

3 Likes

I just downloaded it today. Everything is up to date. It checked out in r too

1 Like

And thanks for the reply :slight_smile:

Unfortunately download date doesn’t necessarily matter, sometimes conda will grab different versions of things. Please provide the information I requested above, that way we can assist you!

Hi @Kristina_Feye,

Thanks for posting, you are the first to catch a bug!

The parameter --p-condition was recently changed to --m-metadata-column (thanks @fedarko !) and I did not update the tutorial (or apparently the conda release) to reflect that. This has been corrected. If you remove the plugin and reinstall, it should now work using the correct --m-metadata-column parameter. I have also updated the tutorial to reflect this. The updated q2-aldex2 version for this bug fix on conda is 0.1.1.

Thanks for catching this and let me know if you encounter anymore issues! I will also be working on the to improve consistency with the Github wiki.

Cheers,

Dan

6 Likes

How do I directly remove a plugin? Also, I downloaded from your github site last week, I should probably remove that build as well.

Understood. I also tried to download Aldex2 from github a while back.

(qiime2-2019.7) pmrubine-u01dx:~ kristinaadmin$ qiime aldex2 --help
Usage: qiime aldex2 [OPTIONS] COMMAND [ARGS]…

Description: Analysis Of Differential Abundance Taking Sample Variation
Into Account

Plugin website: https://github.com/mortonjt/q2-aldex2

Getting user support: Please post to the QIIME 2 forum for help with this
plugin: https://forum.qiime2.org

Options:
–version Show the version and exit.
–citations Show citations and exit.
–help Show this message and exit.

Commands:
aldex2 Analysis Of Differential Abundance
effect-plot Effect plots
extract-differences Extract differentially expressed features
(qiime2-2019.7) pmrubine-u01dx:~ kristinaadmin$ qiime aldex2 --version
QIIME 2 Plugin ‘aldex2’ version 1.14.1 (from package ‘q2-aldex2’ version 0+untagged.31.g6a06bdc)
(qiime2-2019.7) pmrubine-u01dx:~ kristinaadmin$

It looks like it is version 1.14.1 that I was running. I have not updated the plugin.

1 Like

Awesome, thank you! I will try this during the weekend. I am really excited ya’ll have this ready to rock! I’ve appreciated ALDEX2 for a while.

1 Like

Hi @Kristina_Feye,

You can remove it using conda remove -n qiime2-2019.7 q2-aldex2 (assuming your environment name is qiime2-2019.7), then reinstall using conda install -c dgiguere q2-aldex2. This should work!

Cheers,

Dan

1 Like