当我尝试从熊猫导入DataFrame时,发生ImportError

时间:2018-07-31 08:35:57

标签: python pandas

问题:当我尝试运行“ from pandas import read_csv”或“ from pandas import DataFrame”时,出现错误,分别显示“ ImportError: cannot import name 'read_csv'”和“ [![ImportError: cannot import name 'DataFrame'][1]][1]”。

我要运行的代码:

    from pandas import DataFrame
    from sklearn import datasets 
    iris = datasets.load_iris()
    data = pandas.DataFrame(iris)
    kfold = KFold(10, True, 1)
    for train, test in kfold.split(data):
print('train: %s, test: %s' % (data[train], data[test]))

我尝试的内容:我检查了关于stackoverflow和github的每个导入错误问题,但是我不知道解决方案。 我没有其他名为pandas.py的文件。 我尝试卸载并重新安装所有软件包(例如scipy,scikit-learn,numpy,pandas) 我尝试更新所有软件包,但没有运气 我拥有的应用程序规范-Windows 10版本1803,Anaconda 4.5.8,spyder 3.3.0

实际上,由于这些ImportErrors,我之前运行成功的其他代码均未执行。任何帮助将非常感激。谢谢!

这是“ pip show pandas”的结果 enter image description here

这是“ conda search -f pandas”的结果 enter image description here

3 个答案:

答案 0 :(得分:3)

您已经在语句DataFrame中导入了from pandas import DataFrame

因此,您无需使用pandas.DataFrame,而只需使用DataFrame

但是我的建议是使用import pandas as pd,与此同时,您可以使用熊猫的所有子模块。

使用以下代码:

import pandas as pd
from sklearn import datasets 
iris = datasets.load_iris()
data = pd.DataFrame(iris)
kfold = KFold(10, True, 1)
for train, test in kfold.split(data):
    print('train: %s, test: %s' % (data[train], data[test]))

答案 1 :(得分:1)

你知道出什么事了吗?您的文件名pandas.py这很有趣,但却是一个棘手的问题,没人会轻易注意到。实际上,当您要导入库时,python首先查找当前文件夹,然后再定义所有python路径。在这里,您尝试导入pandas,python首先获取pandas.py并寻找DataFrame。但是其中没有DataFrame可以导入。

仅需更改文件名即可。将来,请勿使用标准库名称来命名文件。

答案 2 :(得分:1)

如果正确安装了pandassklearn,这应该可以工作:

import pandas as pd
from sklearn import datasets 
from sklearn.model_selection import KFold
iris = datasets.load_iris()
data = pd.DataFrame(iris.data,columns = iris.feature_names)
kfold = KFold(10, True, 1)
for train, test in kfold.split(data):
    print('train: %s, test: %s' % (data.iloc[train], data.iloc[test]))