Python "Zu viele Indizes für das array"
Ich bin beim Lesen einer Datei in python mit pandas und dann speichern Sie es in ein numpy-array.
Die Datei hat die dimension 11303402 Zeilen x 10 Spalten.
Ich brauche zur Aufteilung der Daten für die cross-Validierung und für die, die ich in Scheiben geschnitten, die Daten in 11303402 Zeilen x 9 Spalten von Beispielen und 1 array mit 11303402 Zeilen x 1 col-Etiketten.
Der folgende code ist der code:
tdata=pd.read_csv('train.csv')
tdata.columns='Arrival_Time','Creation_Time','x','y','z','User','Model','Device','sensor','gt']
User_Data = np.array(tdata)
features = User_Data[:,0:9]
labels = User_Data[:,9:10]
Kommt der Fehler im folgenden code:
classes=np.unique(labels)
idx=labels==classes[0]
Yt=labels[idx]
Xt=features[idx,:]
Auf der Linie:
Xt=features[idx,:]
heißt es: "zu viele Indizes für array'
Die Formen der alle 3 Datensätze sind:
print np.shape(tdata) = (11303402, 10)
print np.shape(features) = (11303402, 9)
print np.shape(labels) = (11303402, 1)
Wenn jemand weiß, das problem, bitte um Hilfe.
Was ist
Entfernen Sie das Semikolon, so dass Sie
Und was ist die Form der
Sorry, ich aktualisierte den code. Es bedeutet einfach, dass die erste Klasse in einer Klasse und Form
c
? Eine komplette, eigenständige, ausführbare Programm mit selbst-generierten random (oder null) input-Daten helfen würde.Entfernen Sie das Semikolon, so dass Sie
Xt=features[idx:]
.Und was ist die Form der
idx
?Sorry, ich aktualisierte den code. Es bedeutet einfach, dass die erste Klasse in einer Klasse und Form
idx
ist (11303402,1)
@WoozyCoder Nopes, hat nicht funktioniert.InformationsquelleAutor Farhan Javed | 2016-05-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das problem ist
idx
Form(11303402,1)
da der logische Vergleich gibt ein array zurück, der die gleiche Form wielabels
. Diese beiden Dimensionen alle Indizes infeatures
. Die schnelle umgehen, istInformationsquelleAutor Keith Prussing