问题:当我尝试运行“ 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,我之前运行成功的其他代码均未执行。任何帮助将非常感激。谢谢!
答案 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)
如果正确安装了pandas
和sklearn
,这应该可以工作:
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]))