机器学习Python追溯错误

时间:2020-04-22 21:26:12

标签: python pandas numpy scipy

我正在尝试使用Python学习机器学习,我运行我的代码以尝试获取数据集。我正在学习一个教程。这是我目前的代码。这也是我第一次接触Pandas,所以我可能不是这个学科上的佼佼者,但是我一直在寻找新的东西。

# Machine Learning
# Tutorial By machinelearningmastery.com

# Modules

from pandas import read_csv
from pandas.plotting import scatter_matrix
from matplotlib import pyplot
from sklearn.model_selection import train_test_split
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import StratifiedKFold
from sklearn.metrics import classification_report
from sklearn.metrics import confusion_matrix
from sklearn.metrics import accuracy_score
from sklearn.linear_model import LogisticRegression
from sklearn.tree import DecisionTreeClassifier
from sklearn.neighbors import KNeighborsClassifier
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
from sklearn.naive_bayes import GaussianNB
from sklearn.svm import SVC

# Load dataset
url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv"
names = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class']
dataset = read_csv(url, names=names)


# shape
print(dataset.shape)


# head
print(dataset.head(20))

上面的代码再次在教程中。

这是终端中的错误。我正在使用python 3.8.2和Iterm作为终端。

Traceback (most recent call last):
  File "machinelearning.py", line 25, in <module>
    dataset = read_csv(url, names=names)
  File "/Users/tylercritchlow/python-virtual-environments/env/lib/python3.8/site-packages/pandas/io/parsers.py", line 676, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "/Users/tylercritchlow/python-virtual-environments/env/lib/python3.8/site-packages/pandas/io/parsers.py", line 430, in _read
    fp_or_buf, _, compression, should_close = get_filepath_or_buffer(
  File "/Users/tylercritchlow/python-virtual-environments/env/lib/python3.8/site-packages/pandas/io/common.py", line 172, in get_filepath_or_buffer
    req = urlopen(filepath_or_buffer)
  File "/Users/tylercritchlow/python-virtual-environments/env/lib/python3.8/site-packages/pandas/io/common.py", line 141, in urlopen
    return urllib.request.urlopen(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/urllib/request.py", line 542, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/urllib/request.py", line 502, in _call_chain
    result = func(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/urllib/request.py", line 1362, in https_open
    return self.do_open(http.client.HTTPSConnection, req,
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/urllib/request.py", line 1322, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108)>

我正在虚拟环境中运行代码。这些是我模块的版本。

Python:3.8.2(v3.8.2:7b3ab5921f,2020年2月24日,17:52:18) [Clang 6.0(clang-600.0.57)] scipy:1.4.1 numpy的:1.18.3 matplotlib:3.2.1 熊猫:1.0.3

1 个答案:

答案 0 :(得分:0)

尝试从该URL获取数据时出现SSL证书错误。

问题所在的地方是注释#load dataset下的代码。 为了继续您的教程,您可以通过以下方式获取虹膜数据集。

import pandas as pd
from sklearn.datasets import load_iris

#load dataset
dataset = load_iris()
dataset = pd.DataFrame(dataset['data'],columns=['sepal length','sepal width','petal Length','petal width'])
dataset['Species']=dataset['target']

# shape
print(dataset.shape)

# head
print(dataset.head(20))