Rescript: A plugin named 'longitudinal' could not be found.

Hello!
I'm trying to run evaluate fit classifier, in qiime2 v. 2023.9. I've tried everything
my script is:
qiime rescript evaluate-fit-classifier
--i-sequences ncbirefseqs.qza
--i-taxonomy ncbirefseqstaxonomy.qza
--o-classifier ncbirefseqsclassifier.qza
--o-evaluation ncbirefseqsclassifierevaluation.qzv
--o-observed-taxonomy ncbirefseqspredictedtaxonomy.qza
--verbose

/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/rescript/cross_validate.py:34: FutureWarning: Passing a set as an indexer is deprecated and will raise in a future version. Use a list instead.
taxa = taxa.loc[seq_ids]
Validation: 0.44s
/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/q2_feature_classifier/classifier.py:102: UserWarning: The TaxonomicClassifier artifact that results from this method was trained using scikit-learn version 0.24.1. It cannot be used with other versions of scikit-learn. (While the classifier may complete successfully, the results will be unreliable.)
warnings.warn(warning, UserWarning)
Training: 11.39s
Classification: 10.96s
Traceback (most recent call last):
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/qiime2/sdk/context.py", line 53, in get_action
plugin_obj = pm.plugins[plugin]
KeyError: 'longitudinal'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/q2cli/commands.py", line 520, in call
results = self._execute_action(
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/q2cli/commands.py", line 586, in _execute_action
results = action(**arguments)
File "", line 2, in evaluate_fit_classifier
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/qiime2/sdk/action.py", line 342, in bound_callable
outputs = self.callable_executor(
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/qiime2/sdk/action.py", line 647, in callable_executor
outputs = self._callable(scope.ctx, **view_args)
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/rescript/cross_validate.py", line 53, in evaluate_fit_classifier
evaluation, = _eval([taxonomy], [observed_taxonomy])
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/qiime2/sdk/context.py", line 140, in deferred_action
return action_obj._bind(
File "", line 2, in evaluate_classifications
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/qiime2/sdk/action.py", line 342, in bound_callable
outputs = self.callable_executor(
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/qiime2/sdk/action.py", line 647, in callable_executor
outputs = self._callable(scope.ctx, **view_args)
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/rescript/cross_validate.py", line 169, in evaluate_classifications
volatility = ctx.get_action('longitudinal', 'volatility')
File "/home/elizabeth/miniconda3/envs/qiime2shot/lib/python3.8/site-packages/qiime2/sdk/context.py", line 55, in get_action
raise ValueError("A plugin named %r could not be found." % plugin)
ValueError: A plugin named 'longitudinal' could not be found.

Plugin error from rescript:

A plugin named 'longitudinal' could not be found.

See above for debug info.

I've installed qiime2 twice, and I get the same error message, I don't know what to do now. :sob:
Can anybody help me, please? :face_holding_back_tears: :woman_technologist:

Hi @elizabeck ,

From the looks of things, I am guessing that you have installed the QIIME 2 shotgun metagenomics distribution, but now you are trying to build and evaluate an NCBI RefSeqs database (of 16S? or another marker gene?)

The QIIME 2 shotgun metagenomics distribution includes RESCRIPt but does not include q2-longitudinal. This you can install in your environment with this command:

 conda install -c qiime2 q2-longitudinal

But before trying that you could just confirm that it is indeed not installed in your environment with this command (which should give an empty output):

conda list q2-longitudinal

Installing q2-longitudinal in your environment should resolve this error.

Good luck!

2 Likes

Hi!
Yes, I have installed Qiime2 shotgun, and I run the script you gave me, and I got a error message:

conda install -c qiime2 q2-longitudinal
Channels:

  • qiime2
  • defaults
  • conda-forge
  • bioconda
  • released
    Platform: linux-64
    Collecting package metadata (repodata.json): done
    Solving environment: | warning libmamba Added empty dependency for problem type SOLVER_RULE_UPDATE
    failed

LibMambaUnsatisfiableError: Encountered problems while solving:

  • cannot install both pin-1-1 and pin-1-1
  • package q2-longitudinal-2021.4.0-py38_0 requires q2-feature-table 2021.4.*, but none of the providers can be installed

Could not solve for environment specs
The following packages are incompatible
├─ _openmp_mutex 4.5** is requested and can be installed;
├─ biom-format 2.1.14** is requested and can be installed;
├─ harfbuzz 6.0.0** is installable with the potential options
│ ├─ harfbuzz 6.0.0 would require
│ │ └─ icu >=70.1,<71.0a0 , which can be installed;
│ └─ harfbuzz 6.0.0 would require
│ └─ icu >=72.1,<73.0a0 , which conflicts with any installable versions previously reported;
├─ hdf5 1.14.0** is requested and can be installed;
├─ icu 70.1** is requested and can be installed;
├─ libffi 3.4.2** is requested and can be installed;
├─ libgfortran-ng 13.2.0** is requested and can be installed;
├─ libopenblas 0.3.24** is installable and it requires
│ └─ openblas >=0.3.24,<0.3.25.0a0 , which can be installed;
├─ libzlib 1.2.13** is installable with the potential options
│ ├─ libzlib 1.2.13 would require
│ │ └─ zlib 1.2.13 _4, which can be installed;
│ └─ libzlib 1.2.13 would require
│ └─ zlib 1.2.13 _5, which can be installed;
├─ ncurses 6.4
is requested and can be installed;
├─ numba 0.57.1** is installable with the potential options
│ ├─ numba 0.57.1 would require
│ │ └─ numpy >=1.21,!=1.22.0,!=1.22.1,!=1.22.2,<1.25 , which can be installed;
│ └─ numba 0.57.1 would require
│ └─ _openmp_mutex >=5.1 , which conflicts with any installable versions previously reported;
├─ numpy 1.24.4** is requested and can be installed;
├─ pandas 1.5.3** is requested and can be installed;
├─ pin-1 is installable with the potential options
│ ├─ pin-1 1, which can be installed;
│ └─ pin-1 1 conflicts with any installable versions previously reported;
├─ q2-feature-table 2023.9.0** is requested and can be installed;
└─ q2-longitudinal is not installable because there are no viable options
├─ q2-longitudinal 2021.4.0 would require
│ └─ q2-feature-table 2021.4.* , which conflicts with any installable versions previously reported;
├─ q2-longitudinal 2019.10.0 would require
│ └─ q2-types 2019.10.* , which requires
│ └─ matplotlib-base 3.1.0.* , which requires
│ └─ icu >=58.2,<59.0a0 , which conflicts with any installable versions previously reported;
├─ q2-longitudinal [2020.11.1|2020.8.0|2021.2.0] would require
│ └─ matplotlib-base <3.3 but there are no viable options
│ ├─ matplotlib-base [2.2.3|2.2.4|...|3.2.2], which cannot be installed (as previously explained);
│ ├─ matplotlib-base [2.1.2|2.2.4|...|3.2.2] would require
│ │ └─ icu >=64.2,<65.0a0 , which conflicts with any installable versions previously reported;
│ └─ matplotlib-base [2.2.5|3.2.2] would require
│ └─ icu >=67.1,<68.0a0 , which conflicts with any installable versions previously reported;
├─ q2-longitudinal [2020.2.0|2020.6.0] would require
│ └─ q2templates [2020.2.* |2020.6.* ], which requires
│ └─ pandas <1 but there are no viable options
│ ├─ pandas [0.20.3|0.21.0|...|0.25.3] conflicts with any installable versions previously reported;
│ ├─ pandas [0.17.0|0.17.1|...|0.23.4] would require
│ │ └─ python [3.5* |>=3.5,<3.6.0a0 ] but there are no viable options
│ │ ├─ python [3.4.5|3.5.1|3.5.2|3.5.3|3.5.4] would require
│ │ │ └─ ncurses 5.9* , which conflicts with any installable versions previously reported;
│ │ ├─ python [3.5.4|3.5.5|3.5.6] would require
│ │ │ └─ libffi [3.2.* |>=3.2.1,<3.3.0a0 |>=3.2.1,<3.3a0 ], which conflicts with any installable versions previously reported;
│ │ ├─ python 3.5.6 would require
│ │ │ └─ libffi >=3.3,<3.4.0a0 , which conflicts with any installable versions previously reported;
│ │ └─ python [3.5.4|3.5.5] would require
│ │ └─ zlib 1.2.11 , which conflicts with any installable versions previously reported;
│ ├─ pandas [0.17.0|0.17.1|...|0.19.2] would require
│ │ └─ numpy 1.10* but there are no viable options
│ │ ├─ numpy [1.10.4|1.11.2|...|1.13.3] would require
│ │ │ └─ openblas 0.2.19|0.2.19.* , which conflicts with any installable versions previously reported;
│ │ └─ numpy [1.10.4|1.11.0|1.11.1|1.11.2] would require
│ │ └─ openblas [0.2.18* |0.2.18|0.2.18.* ], which conflicts with any installable versions previously reported;
│ ├─ pandas [0.17.0|0.17.1|...|0.20.3] would require
│ │ └─ numpy 1.11* but there are no viable options
│ │ ├─ numpy [1.11.3|1.12.1|1.13.1|1.13.3] would require
│ │ │ ├─ libgfortran-ng [>=7,<8.0a0 |>=7.2.0,<8.0a0 ], which conflicts with any installable versions previously reported;
│ │ │ ├─ libopenblas >=0.2.20,<0.2.21.0a0 , which requires
│ │ │ │ └─ libgfortran-ng [>=7,<8.0a0 |>=7.2.0,<8.0a0 ], which conflicts with any installable versions previously reported;
│ │ │ └─ numpy-base [1.11.3 py27h2b20989_7|1.11.3 py27h2b20989_8|...|1.11.3 py37h7cdd4dd_9], which requires
│ │ │ └─ libopenblas >=0.2.20,<0.2.21.0a0 , which cannot be installed (as previously explained);
│ │ ├─ numpy [1.10.4|1.11.2|...|1.13.3], which cannot be installed (as previously explained);
│ │ ├─ numpy [1.11.3|1.12.1|1.13.1|1.13.2|1.13.3] would require
│ │ │ └─ openblas [0.2.20|0.2.20.* |>=0.2.20,<0.2.21.0a0 ] but there are no viable options
│ │ │ ├─ openblas [0.2.20|0.3.3] would require
│ │ │ │ ├─ libgfortran-ng >=7,<8.0a0 , which conflicts with any installable versions previously reported;
│ │ │ │ ├─ libopenblas [0.3.3 h5a2b251_1|0.3.3 h5a2b251_2|0.3.3 h5a2b251_3|>=0.2.20,<0.2.21.0a0 ], which cannot be installed (as previously explained);
│ │ │ │ └─ openblas-devel >=0.2.20,<0.2.21.0a0 , which requires
│ │ │ │ └─ libopenblas >=0.2.20,<0.2.21.0a0 , which cannot be installed (as previously explained);
│ │ │ └─ openblas 0.2.20 conflicts with any installable versions previously reported;
│ │ ├─ numpy [1.11.3|1.12.1|1.13.3] would require
│ │ │ ├─ libgfortran-ng >=7,<8.0a0 , which conflicts with any installable versions previously reported;
│ │ │ └─ openblas >=0.3.3,<0.3.4.0a0 but there are no viable options
│ │ │ ├─ openblas [0.2.20|0.3.3], which cannot be installed (as previously explained);
│ │ │ └─ openblas 0.3.3 conflicts with any installable versions previously reported;
│ │ ├─ numpy 1.11.3 would require
│ │ │ ├─ libgfortran-ng >=7,<8.0a0 , which conflicts with any installable versions previously reported;
│ │ │ ├─ libopenblas >=0.3.2,<0.3.3.0a0 , which conflicts with any installable versions previously reported;
│ │ │ └─ numpy-base [1.11.3 py27h74e8950_9|1.11.3 py35h74e8950_9|1.11.3 py36h74e8950_9|1.11.3 py37h74e8950_9], which requires
│ │ │ └─ libopenblas >=0.3.2,<0.3.3.0a0 , which conflicts with any installable versions previously reported;
│ │ ├─ numpy [1.10.4|1.11.0|1.11.1|1.11.2], which cannot be installed (as previously explained);
│ │ ├─ numpy 1.11.3 conflicts with any installable versions previously reported;
│ │ ├─ numpy 1.11.3 would require
│ │ │ └─ python 3.4* , which cannot be installed (as previously explained);
│ │ └─ numpy 1.11.3 would require
│ │ └─ python 3.5* , which cannot be installed (as previously explained);
│ ├─ pandas [0.17.0|0.17.1|...|0.20.3] would require
│ │ └─ python 3.4* , which cannot be installed (as previously explained);
│ ├─ pandas [0.19.2|0.20.0|0.20.1|0.20.2|0.20.3] would require
│ │ └─ numpy 1.12* , which cannot be installed (as previously explained);
│ ├─ pandas [0.20.2|0.20.3] would require
│ │ └─ numpy 1.13* but there are no viable options
│ │ ├─ numpy [1.11.3|1.12.1|1.13.1|1.13.3], which cannot be installed (as previously explained);
│ │ ├─ numpy 1.13.3 conflicts with any installable versions previously reported;
│ │ ├─ numpy [1.10.4|1.11.2|...|1.13.3], which cannot be installed (as previously explained);
│ │ ├─ numpy [1.11.3|1.12.1|1.13.1|1.13.2|1.13.3], which cannot be installed (as previously explained);
│ │ └─ numpy [1.11.3|1.12.1|1.13.3], which cannot be installed (as previously explained);
│ └─ pandas [0.20.2|0.20.3] would require
│ ├─ numpy 1.13* but there are no viable options
│ │ ├─ numpy [1.11.3|1.12.1|1.13.1|1.13.3], which cannot be installed (as previously explained);
│ │ ├─ numpy 1.13.3 conflicts with any installable versions previously reported;
│ │ ├─ numpy [1.10.4|1.11.2|...|1.13.3], which cannot be installed (as previously explained);
│ │ ├─ numpy [1.11.3|1.12.1|1.13.1|1.13.2|1.13.3], which cannot be installed (as previously explained);
│ │ └─ numpy [1.11.3|1.12.1|1.13.3], which cannot be installed (as previously explained);
│ └─ python 3.5* , which cannot be installed (as previously explained);
├─ q2-longitudinal [2021.11.0|2021.8.0] would require
│ └─ q2-types [2021.11.* |2021.8.* ], which requires
│ └─ hdf5 1.10.6.* , which conflicts with any installable versions previously reported;
├─ q2-longitudinal [2022.11.0|2022.11.1] would require
│ └─ q2-types 2022.11.* but there are no viable options
│ ├─ q2-types [2022.11.1|2023.2.0|2023.5.0] would require
│ │ └─ biom-format 2.1.12.* , which conflicts with any installable versions previously reported;
│ └─ q2-types 2022.11.0 would require
│ └─ biom-format 2.1.13.* , which conflicts with any installable versions previously reported;
├─ q2-longitudinal 2022.2.0 would require
│ ├─ pandas 1.2.* , which conflicts with any installable versions previously reported;
│ └─ q2-feature-table 2022.2.* , which conflicts with any installable versions previously reported;
├─ q2-longitudinal 2022.8.0 would require
│ └─ q2-feature-table 2022.8.* , which conflicts with any installable versions previously reported;
├─ q2-longitudinal [2023.2.0|2023.5.0] would require
│ └─ q2-types [2023.2.* |2023.5.* ], which cannot be installed (as previously explained);
└─ q2-longitudinal 2023.7.0 would require
└─ q2-feature-table 2023.7.* , which conflicts with any installable versions previously reported.

Pins seem to be involved in the conflict. Currently pinned specs:

  • python 3.8.* (labeled as 'pin-1')

So, I tried in qiime2 amplicon, I installed rescript with the following script:

conda install \
  -c conda-forge -c bioconda -c qiime2 -c https://packages.qiime2.org/qiime2/2023.5/tested/ -c defaults \
  qiime2 q2cli q2templates q2-types q2-longitudinal q2-feature-classifier 'q2-types-genomics>2023.2' \
  "pandas>=0.25.3" xmltodict ncbi-datasets-pylib

and got this error message:

Channels:

  • conda-forge
  • bioconda
  • qiime2
  • 2023.5-tested
  • defaults
  • released
    Platform: linux-64
    Collecting package metadata (repodata.json): done
    Solving environment: / warning libmamba Added empty dependency for problem type SOLVER_RULE_UPDATE
    failed

LibMambaUnsatisfiableError: Encountered problems while solving:

  • cannot install both pin-1-1 and pin-1-1
  • package q2-types-genomics-2023.5.0.dev0+1.g41f3d57-py38_0 requires q2-types 2023.5.*, but none of the providers can be installed

Could not solve for environment specs
The following packages are incompatible
├─ biom-format 2.1.14** is requested and can be installed;
├─ pin-1 is installable with the potential options
│ ├─ pin-1 1, which can be installed;
│ └─ pin-1 1 conflicts with any installable versions previously reported;
└─ q2-types-genomics >2023.2 is not installable because it requires
└─ q2-types 2023.5.* , which requires
└─ biom-format 2.1.12.* , which conflicts with any installable versions previously reported.

Pins seem to be involved in the conflict. Currently pinned specs:

  • python 3.8.* (labeled as 'pin-1')

Heeelp! :sob:

Ok!
I found the solution
I installed rescript with mamba instead conda as suggested here

Thank you!
Gracias! :woman_technologist:

3 Likes

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.