【问题标题】:Importing Pandas gives error AttributeError: module 'pandas' has no attribute 'core' in iPython Notebook导入 Pandas 会出现错误 AttributeError: module 'pandas' has no attribute 'core' in iPython Notebook
【发布时间】:2016-07-31 00:30:32
【问题描述】:

我正在通过 Anaconda Navigator 应用程序(版本 1.1.0)运行 iPython 笔记本。 当我想导入熊猫时,它给了我一个奇怪的错误。我以为 Anaconda 应用包含 pandas 包?

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-4-af55e7023913> in <module>()
----> 1 import pandas as pd

/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/__init__.py in <module>()
 37 import pandas.core.config_init
 38 
---> 39 from pandas.core.api import *
 40 from pandas.sparse.api import *
 41 from pandas.stats.api import *

/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/core/api.py in <module>()
  8 from pandas.core.common import isnull, notnull
  9 from pandas.core.categorical import Categorical
---> 10 from pandas.core.groupby import Grouper
 11 from pandas.core.format import set_eng_float_format
 12 from pandas.core.index import (Index, CategoricalIndex, Int64Index,

/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/core/groupby.py in <module>()
 16                               DataError, SpecificationError)
 17 from pandas.core.categorical import Categorical
---> 18 from pandas.core.frame import DataFrame
 19 from pandas.core.generic import NDFrame
 20 from pandas.core.index import (Index, MultiIndex, CategoricalIndex,

/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/core/frame.py in <module>()
 37                                    create_block_manager_from_arrays,
 38                                    create_block_manager_from_blocks)
---> 39 from pandas.core.series import Series
 40 from pandas.core.categorical import Categorical
 41 import pandas.computation.expressions as expressions

/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/core/series.py in <module>()
 33 from pandas.core.internals import SingleBlockManager
 34 from pandas.core.categorical import Categorical, CategoricalAccessor
---> 35 import pandas.core.strings as strings
 36 from pandas.tseries.common import (maybe_to_datetimelike,
 37                                    CombinedDatetimelikeProperties)

AttributeError: module 'pandas' has no attribute 'core'

【问题讨论】:

  • 您的目录中是否有一个名为pandas.py 的文件?试试import pandas;print(pandas.__file__)
  • @Padraic Cunningham:目录中没有 pandas.py 文件。当我键入您提到的 Python 代码时,它会产生相同的错误。我还想补充一点,我正在使用 Mac。这可能和苹果提供的 Python 有冲突吗?
  • 是的,应该已经注意到,从回溯中,我无法想象您的系统和安装的 anaconda 软件包之间有任何重叠。如果您执行 pip/conda 更新,您会看到相同的错误吗?
  • 输入 'which python' 看看你用的是什么 python。是Anaconda包提供的吗?
  • @Padraic Cunningham:当我更新熊猫包时,错误仍然存​​在。

标签: python pandas anaconda


【解决方案1】:

关闭并打开您的文本编辑器,问题将得到解决,一定是您在处理大型数据集时发生的

【讨论】:

    【解决方案2】:

    我可以确认这个问题是由于 pandas 0.23 造成的。

    卸载然后重新安装 0.22。

    pip uninstall pandas
    pip install pandas==0.22
    

    希望这可以解决问题。

    【讨论】:

    • 这为我解决了这个问题,虽然我只是安装了最新的熊猫
    【解决方案3】:

    我在 pandas 最新版本中遇到了同样的错误。然后看到这个警告

    FutureWarning: 'pandas.tools.plotting.scatter_matrix' 已弃用, 改为导入“pandas.plotting.scatter_matrix”。

    这对你有用。

    【讨论】:

      【解决方案4】:

      我遇到了类似的问题,因为我使用 python -m pip install pandas --upgrade --user 安装了 pandas,它在我的用户 python 包目录中安装了一个冲突的版本,掩盖了其他依赖项所依赖的 Anaconda 安装版本。

      conda list | grep pandas
      pandas == 0.23.4
      
      python -m pip list | grep pandas
      pandas == 0.24.0
      

      所以卸载用户目录屏蔽版本为我解决了这个问题。

      python -m pip uninstall pandas
      

      作为参考,所有可能的 python 包都安装在此命令列出的目录中:

      python -m site
      

      可能值得遍历这些并检查重复项。

      编辑: 自从我最初的回答后,我了解到您可以运行:

      python -m pip list -v
      

      它显示了安装库的目录。这通常会显示你想要的库是否在虚拟环境、conda 环境、用户目录、系统站点包等中。

      【讨论】:

      • 谢谢。对我来说,虽然我必须先做python -m pip uninstall pandas,然后再做pip install pandas,然后一切又开始工作了!
      • 这两个都是答案
      【解决方案5】:

      我遇到了确切的问题,这是我的解决方法:

      我发现我首先安装了 Keras,然后在我的虚拟环境中安装了 pandas。当你安装 keras 时,pandas 是随它一起提供的。不需要 pip 安装 pandas。

      我通过创建新的虚拟环境和wala 来测试这个假设... pandas 在没有我安装的情况下出现了。因此我得出结论,当您 pip install keras 时,会自动安装 pandas。

      【讨论】:

        【解决方案6】:

        我是通过使用 Anaconda 默认环境而不是安装了 pandas 的自定义环境获得的。

        更改为正确的环境并重新打开 Jupyter 笔记本并没有为我解决此问题(python 3.7、pandas 0.23.0)。重启 Anaconda 就可以了。

        【讨论】:

          【解决方案7】:

          你可以试试下面的命令

          conda upgrade --all
          

          并尝试重新启动笔记本。

          希望对你有帮助

          【讨论】:

            【解决方案8】:

            发生这种情况还有另一个奇怪的原因。如果您在相同或嵌套级别中有一个名为 pandas.py 的文件或一个名为 pandas 的目录,则使用该库代替并且无法工作。重命名文件夹并重新启动环境并开始工作。面对这个

            【讨论】:

            • 谢谢!这对我来说是一个晦涩难懂的...
            • 谢谢,我花了两个小时阅读并找到解决方案,问题是我的 python 文件的名称是 pandas.py,所以 import pandas 正在导入自己。
            【解决方案9】:

            我在导入 TensorFlow 时遇到了类似的问题。如果您使用的是使用 Pandas 库的 Tensorflow,我建议您使用 restarting your kernel of Anaconda。这对我有用。

            【讨论】:

              【解决方案10】:

              你得到这个是因为你使用的是 Jupyter notebook 的 Anaconda 发行版。所以只需执行conda install pandas 重新启动您的jupyter notebook 并重新运行您的单元格。它应该工作。 如果你在虚拟环境上尝试这个,试试这个

              1. conda create -n name_of_my_env python 这将创建一个仅安装 Python 的最小环境。把你自己放在这个环境中运行:

              2 source activate name_of_my_env 在 Windows 上,命令是: activate name_of_my_env 所需的最后一步是安装 pandas。这可以通过以下命令完成:

              conda install pandas 要安装特定的 pandas 版本:

              conda install pandas=0.20.3

              要安装其他包,例如 IPython:

              conda install ipython 要安装完整的 Anaconda 发行版:

              conda install anaconda

              如果您需要 pip 可用但 conda 不可用的包,请安装 pip,然后使用 pip 安装这些包:

              conda install pip pip install django Installing from PyPI pandas 可以通过 PyPI 中的 pip 安装。

              pip install pandas 使用 ActivePython 安装

              希望这会有所帮助。

              【讨论】:

                【解决方案11】:

                我遇到了同样的问题,我使用以下步骤解决了它:

                1. 打开“Anaconda 提示”[适用于 Windows]
                2. 运行“conda uninstall pandas”。
                3. 运行“conda install pandas”。

                其实是pandas版本冲突,按照以上步骤自动解决。

                保持祝福!

                【讨论】:

                  【解决方案12】:

                  我最近在 Anaconda Prompt 中安装 Pandas 0.23 后遇到了同样的问题。解决方案只是重新启动报告错误的 Jupyter Notebook。愿它有所帮助。

                  【讨论】:

                    【解决方案13】:

                    安装 TensorFlow 包后我遇到了同样的问题,它将我的 pandas 版本从 2.23 降级到 2.22。我尝试了上面提出的所有解决方案 + 帖子作者建议的解决方案,链接 here。 最终对我有用的是重新安装 Anaconda 发行版

                    【讨论】:

                      【解决方案14】:

                      最新版本的 pandas (pandas 0.23) 中存在这个错误,导致您在导入 pandas 时出错。

                      但这可以通过在 Windows 命令提示符上使用命令 pip install pandas==0.22 安装较早版本的 pandas (pandas 0.22) 轻松解决。

                      【讨论】:

                      • 这在带有 ARM 的 MacOS 上失败。 (M1)
                      【解决方案15】:
                      1. 按Ctrl+C关闭jupyter notebook,关闭所有jupyter notebook窗口
                      2. cmd 提示符 中键入 jupyter notebook 重新打开它。

                      【讨论】:

                        【解决方案16】:

                        您是否尝试将其关闭再打开?”(The IT crowd 的 Roy)

                        这件事今天发生在我身上,这就是我最终到达此页面的原因。看到这个错误很奇怪,因为最近我没有对我的 Python 环境进行任何更改。有趣的是,我观察到如果我打开一个新笔记本并 import pandas 我不会收到相同的错误消息。所以,我做了shutdown这个麻烦的笔记本,然后重新启动它,瞧,它又可以工作了!

                        尽管这解决了问题(至少对我而言),但我无法轻易解释为什么会发生这种情况!

                        【讨论】:

                        • 这个问题发生在我身上,因为当我注意到 import pandas 单元的执行时间异常长时,我停止了它的执行。当我停止后立即重新运行单元时,它抛出了 AttributeError 。关闭并重新启动笔记本可解决此问题。
                        • 这件事发生在我身上,因为我在 IDE(在我的例子中是 Spyder)上使用 pandas 时升级了它。重新启动 spyder 并解决了问题。感谢您的提醒。
                        • 这里的情况相同,pandas 0.25.3。关闭并重新启动工作。
                        • 我遇到了同样的情况。熊猫 0.25.3。 Jupyter notebook 的关闭和重启对我有用。
                        • 同样的故事。在导入熊猫时我做了键盘中断。正如其他人所提到的,关闭笔记本,停用然后重新激活虚拟环境并重新打开笔记本解决了这个问题。感谢您的帮助。
                        【解决方案17】:

                        我刚刚解决了这个问题。 最近,我将 MacBook 的语言设置从英语-英国更改为中文。而且我认为该设置也会更改“语言环境”中的设置。因为切换回来的时候发现locale的设置又改了,又可以导入pandas了。

                        因此,如果您最近更改了语言设置,您可能值得尝试将其更改回来。

                        【讨论】:

                        • 这是正确的;这发生在我从英美改为中文时。
                        【解决方案18】:

                        是的,Anaconda 发行版包括 pandas,类型

                        conda list
                        

                        获取已安装软件包的列表。

                        【讨论】:

                          【解决方案19】:

                          显然我在尝试导入熊猫时遇到的错误第一次ValueError: unknown locale: UTF-8

                          之后尝试再次导入,出现了另一个错误,如我上面的问题所述。

                          我在IPython Notebook locale error上找到了解决ValueError的方法

                          更新我的 bash 配置文件后,错误 AttributeError: module 'pandas' has no attribute 'core' 不再出现。

                          【讨论】:

                          • 想知道如何您更新了您的 Bash 个人资料:)
                          【解决方案20】:

                          在您的控制台中尝试

                          conda install pandas
                          

                          看看给出的信息是什么。

                          【讨论】:

                          • 当我这样做时,我得到所有请求的包都已经安装,显示 pandas、0.18.0 和 np110py35_0
                          • 是的,我什至尝试使用 Python 2.7.6 版本的 Anaconda 重新安装,但没有任何帮助。
                          猜你喜欢
                          • 1970-01-01
                          • 1970-01-01
                          • 2022-11-07
                          • 1970-01-01
                          • 1970-01-01
                          • 2022-10-21
                          • 1970-01-01
                          • 2022-10-19
                          • 2022-12-01
                          相关资源
                          最近更新 更多