pd.DataFrame()运行报错'DataFrame' object has no attribute 'DataFrame'问题咨询
问题根因
你当前代码中的pd变量已经不是pandas库的别名,而是被之前的代码覆盖成了一个DataFrame实例,因此调用pd.DataFrame()相当于从DataFrame实例中查找DataFrame属性,触发该报错。之前运行成功的代码是在pd被覆盖前执行的,因此没有问题。
排查验证方法
运行以下代码确认pd的类型:
print(type(pd))
如果输出为<class 'pandas.core.frame.DataFrame'>,即可确认是别名被覆盖的问题。
解决方案
- 先执行重新导入语句重置pd别名:
之后再运行import pandas as pdpk = pd.DataFrame()即可正常创建空DataFrame。 - 如果需要保留之前存储在pd变量中的DataFrame数据,可先重命名再重新导入:
# 先把原有pd指向的DataFrame转存到其他变量 saved_data_from_pd = pd # 再重新导入pandas重置别名 import pandas as pd - 后续编码注意不要使用
pd、np这类通用库别名作为自定义变量名,避免重复覆盖导致同类问题。
内容的提问来源于stack exchange,提问作者Blake Lucey
相关产品推荐
相关产品推荐

