12

我有这个输出:

[Pandas-profiling] ImportError: cannot import name 'ABCIndexClass' from 'pandas.core.dtypes.generic'

尝试以这种方式导入 pandas-profiling 时:

from pandas_profiling import ProfileReport

它似乎正确地导入了 pandas-profiling,但在与 pandas 本身交互时却遇到了困难。这两个库目前都通过 conda 更新。根据他们的文档,它似乎与 pandas-profiling 相关的任何常见问题都不匹配,而且我似乎找不到更通用的导入 name 的解决方案ABCIndexClass

谢谢

4

3 回答 3

12

Pandas v1.3 重命名ABCIndexClassABCIndex. 包的visions依赖pandas-profiling还没有跟上,所以在找不到的时候会抛出错误ABCIndexClass。将 pandas 降级到 1.2.x 系列将解决此问题。

或者,您可以等待visions更新包。

于 2021-08-09T19:19:06.047 回答
7

感谢@aflyingtoaster 的回答,以下解决方法对我来说效果很好:

  1. 编辑文件“~/[your_conda_env_path]/lib/site-packages/visions/dtypes/boolean.py”
  2. 找到“from pandas.core.dtypes.generic import ABCIndexClass, ABCSeries”这一行,然后将 ABCIndexClass 替换为 ABCIndex。
  3. 保存 boolean.py 文件并享受您的报告!
于 2021-09-23T17:58:09.320 回答
1

ABCIndex 类到 ABCIndex

转到用户>annaconda 3>Lib> 站点包> 愿景> dtypes > boolean.py

用文字打开 boolean.py

转到显示 ABCIndexclass 的行并将其更改为 ABCIndex

于 2022-01-12T23:01:17.843 回答