【问题标题】:AttributeError: module 'pandas' has no attribute 'DataFrame'. The syntax is correctAttributeError:模块“pandas”没有属性“DataFrame”。语法正确
【发布时间】:2019-10-09 14:33:39
【问题描述】:

我正在测试这段代码sn-p

import pandas as pd
userInput ={
    'Principal':1000, 
    'terms':15,
    'age':33,
    'Gender':1,
    'weekend':1,
    'Bechalor':0,
    'High School or Below':1,
    'college':0
    }
print(pd.DataFrame(userInput))

我是 python 新手,我无法理解这个 Traceback 序列
它给出了错误:

Traceback (most recent call last):
  File "E:/testing 123 check/json.py", line 1, in <module>
    import pandas as pd
  File "C:\Users\Shaswat\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\__init__.py", line 55, in <module>
    from pandas.core.api import (
  File "C:\Users\Shaswat\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\api.py", line 24, in <module>
    from pandas.core.groupby import Grouper, NamedAgg
  File "C:\Users\Shaswat\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\groupby\__init__.py", line 1, in <module>
    from pandas.core.groupby.generic import (  # noqa: F401
  File "C:\Users\Shaswat\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\groupby\generic.py", line 44, in <module>
    from pandas.core.frame import DataFrame
  File "C:\Users\Shaswat\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\frame.py", line 88, in <module>
    from pandas.core.generic import NDFrame, _shared_docs
  File "C:\Users\Shaswat\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\core\generic.py", line 5, in <module>
    import json
  File "E:/testing 123 check\json.py", line 12, in <module>
    print(pd.DataFrame(userInput))
AttributeError: module 'pandas' has no attribute 'DataFrame'

我是不是把 pandas 安装错了?

【问题讨论】:

  • 尝试运行 python -m pip install --upgrade pandas 。这将尝试升级熊猫,可能会解决问题。 (否则也可以卸载重装,pip uninstall pandas再运行pip install pandas
  • 还要确保您的工作目录中没有名为pandas.py 的文件。这会弄乱导入。
  • 重新安装没有帮助,不,我的工作目录中没有名为 pandas.py 的文件

标签: json python-3.x pandas


【解决方案1】:

我知道这很愚蠢,但是
我已将文件命名为 json.py
干扰了回调
其余的都还可以
另外,在我纠正错误后:

ValueError: If using all scalar values, you must pass an index

那么,我所要做的就是传递一个索引

print(pd.DataFrame(userInput,index=[0]))

【讨论】:

  • 这就是我在回答中提到的,我也被否决了。大声笑。无论如何,您可以直接将字典传递给列表。
【解决方案2】:

我认为如果你尝试传递这个字典,你会得到索引错误。

更新评论中提到的熊猫并将你的字典传递给列表

df = pd.DataFrame([userInput])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-28
    • 2019-05-23
    • 2018-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多