eli5 在 Python 中导入失败

问题描述 投票:0回答:1

我需要一些帮助。当我尝试导入 eli5 包时,结果出现了一些我以前从未见过的奇怪错误。我发布了以下错误:

 ---->46 import eli5                            

File ~\AppData\Local\anaconda3\Lib\site-packages\eli5\__init__.py:13
  6 from .formatters import (
  7     format_as_html,
  8     format_html_styles,
  9     format_as_text,
 10     format_as_dict,
 11 )
 12 from .explain import explain_weights, explain_prediction
---> 13 from .sklearn import explain_weights_sklearn, explain_prediction_sklearn
 14 from .transform import transform_feature_names
 17 try:

File ~\AppData\Local\anaconda3\Lib\site-packages\eli5\sklearn\__init__.py:3
  1 # -*- coding: utf-8 -*-
  2 from __future__ import absolute_import
----> 3 from .explain_weights import (
  4     explain_weights_sklearn,
  5     explain_linear_classifier_weights,
  6     explain_linear_regressor_weights,
  7     explain_rf_feature_importance,
  8     explain_decision_tree,
  9 )
 10 from .explain_prediction import (
 11     explain_prediction_sklearn,
 12     explain_prediction_linear_classifier,
 13     explain_prediction_linear_regressor,
 14 )
 15 from .unhashing import (
 16     InvertableHashingVectorizer,
 17     FeatureUnhasher,
 18     invert_hashing_and_fit,
 19 )

File ~\AppData\Local\anaconda3\Lib\site-packages\eli5\sklearn\explain_weights.py:78
 73 from eli5.transform import transform_feature_names
 74 from eli5._feature_importances import (
 75     get_feature_importances_filtered,
 76     get_feature_importance_explanation,
 77 )
---> 78 from .permutation_importance import PermutationImportance
 81 LINEAR_CAVEATS = """
 82 Caveats:
 83 1. Be careful with features which are not
   (...)
 90    classification result for most examples.
 91 """.lstrip()
 93 HASHING_CAVEATS = """
 94 Feature names are restored from their hashes; this is not 100% precise
 95 because collisions are possible. For known collisions possible feature names


(...)
 99 the result is positive.
100 """.lstrip()

File ~\AppData\Local\anaconda3\Lib\site-packages\eli5\sklearn\permutation_importance.py:7
  5 import numpy as np
  6 from sklearn.model_selection import check_cv
----> 7 from sklearn.utils.metaestimators import if_delegate_has_method
  8 from sklearn.utils import check_array, check_random_state
  9 from sklearn.base import (
 10     BaseEstimator,
 11     MetaEstimatorMixin,
 12     clone,
 13     is_classifier
 14 )

ImportError: cannot import name 'if_delegate_has_method' from 'sklearn.utils.metaestimators'

我已成功“pip install eli5”,但我不确定上述错误是什么意思。那么,有人遇到过类似的问题吗?如何解决这个问题?谢谢

python eli5
1个回答
0
投票

if_delegate_has_method 已被折旧并删除。请参阅:https://scikit-learn.org/1.1/modules/ generated/sklearn.utils.metaestimators.if_delegate_has_method.html

使用 available_if 代替。请参阅:https://scikit-learn.org/stable/modules/ generated/sklearn.utils.metaestimators.available_if.html

我在这里遇到了问题:... li5\sklearn\permuatation_importance.py

© www.soinside.com 2019 - 2024. All rights reserved.