2017-06-16 4 views
0

ich durch das folgende maschinelles Lernen Tutorial arbeite:können nicht Importieren von Daten in Python Verwenden von Pandas

http://machinelearningmastery.com/machine-learning-in-python-step-by-step/

Hier ist meine (mac) Entwicklungsumgebung:

Python 2.7.10 
scipy: 0.13.0b1 
numpy: 1.8.0rc1 
matplotlib: 1.3.1 
pandas: 0.20.2 
sklearn: 0.18.1 

Wenn ich versuche zu laufen ein Skript, um die Daten von einer URL zu laden, die die CSV-Daten enthält, erhalte ich den folgenden Fehler:

Traceback (most recent call last): 
    File "load_data.py", line 4, in <module> 
    dataset = pandas.read_csv(url, names=names) 
NameError: name 'pandas' is not defined 

Hier ist das Skript:

# Load dataset 
url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data" 
names = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class'] 
dataset = pandas.read_csv(url, names=names) 
+0

Traceback zeigt nichts über Ihre CSV-Daten an, sondern das * pandas * benannte Objekt. Was ist deine "Import" -Linie? Wenn "pandas als pd importieren" gelesen wird, müssen Sie alle Pandas-Objekte mit * pd *: 'pd.read_csv()' kennzeichnen. – Parfait

Antwort

2

Ihre Fehler hilft sagt:

dataset = pandas.read_csv(url, names=names) 
NameError: name 'pandas' is not defined 

, die bedeutet, dass Sie versuche, pandas.read_csv() zu verwenden, ohne Pandas fi zu importieren zuerst. Wenn Sie eine externe Bibliothek verwenden möchten, müssen Sie sie importieren. Wenn es nicht auf Ihrem Computer installiert ist, müssen Sie es möglicherweise auch zuerst installieren. unter der Annahme, Pandas auf Ihrem Rechner installiert ist, wird dieser Code funktionieren:

import pandas 
url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data" 
names = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class'] 
dataset = pandas.read_csv(url, names=names) 

Ausgang:

dataset.head(3) 

    sepal-length sepal-width petal-length petal-width  class 
0   5.1   3.5   1.4   0.2 Iris-setosa 
1   4.9   3.0   1.4   0.2 Iris-setosa 
2   4.7   3.2   1.3   0.2 Iris-setosa 
+0

Das Hinzufügen der Import-Anweisung beseitigt den Fehler für mich, aber ich kann die Daten nicht so anzeigen. Haben Sie die Anweisung 'Dataset.head (3)' als fünfte Zeile des Skripts eingefügt? – HMLDude

+0

OK, habe gerade vor dem Dataset.head-Aufruf einen Druckbefehl hinzugefügt und zum Laufen gebracht! – HMLDude

0

Sie die Daten, bevor es

import urllib 
import pandas as pd 

file_path = "./iris.csv" 

#download data 
urllib.request.urlretrieve("https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data", file_path) 

#load it 
dataset = pd.read_csv(file_path, names=names) 
importieren herunterladen können

Hoffe, dass es

0

Sie diesen Fehler bekommen, weil "Pandas" importiert noch nicht ist. Pandas ist eine Importbibliothek für Python.

Fix: Import Pandas

Sie können es danach verwenden.

bessere Alternative: Import Pandas als pd

=> 'pd' wird eine Kurzform repräsentativ für Pandas in Ihrem Skript sein. Es ist ratsam, diesen Weg zu importieren, um zu vermeiden, dass Sie "Pandas" jedes Mal neu eingeben müssen, wenn Sie es in Code schreiben müssen.

Prost!

Verwandte Themen