报错信息:
Plugin error from feature-classifier: The scikit-learn version (1.4.2) used to generate this artifact does not match the current version of scikit-learn installed (0.24.1). Please retrain your classifier for your current deployment to prevent data-corruption errors. Debug info has been saved to /tmp/qiime2-q2cli-err-ia9kpmxq.log
背景描述:
在QIIME2分析过程中,使用已训练的分类器生成物种分类表时出现报错。
执行命令:
time qiime feature-classifier classify-sklearn \
--i-classifier gg-13-8-99-515-806-nb-classifier.qza \
--i-reads rep-seqs-dada2.qza \
--o-classification taxonomy.qza
解决措施:
下载与当前qiime2版本对应的分类器,当前版本环境为qiime2-2024.2
wget \
-O 'gg-13-8-99-515-806-nb-classifier.qza' \
'https://docs.qiime2.org/2024.2/data/tutorials/moving-pictures-usage/gg-13-8-99-515-806-nb-classifier.qza'
重新执行命令,问题解决
原因分析:
分类器版本不兼容
踩坑过程:
尝试使用conda安装1.4.2版本的scikit-learn,出现与qiime2中其他包无法兼容的错误,思考问题可能为分类器版本与qiime2环境版本存在冲突
尝试安装最新版本qiime2环境,但是根据官网提供的地址无法下载24.5对应版本的yml文件,
总结与反思;
如果长时间解决不了问题,大概率是钻牛角尖了,绝大多数的报错不是文件名称不对应,要么就是文件内容不对应,要么就是版本不对应