Python pandas: Warum ist df.iloc[:, :-1].Werte für meine Trainingsdaten wählen Sie bis nur die vorletzte Spalte?

Sehr einfach ausgedrückt, für die gleiche Ausbildung data frame df, wenn ich mit
X = df.iloc[:, :-1].Werte, es wird dann bis in die vorletzte Spalte des data Frames, anstatt die Letzte Spalte (das ist, was ich will, ABER es ist ein merkwürdiges Verhalten habe ich noch nie gesehen), und ich wissen, wie die vorletzte Spalte, die den Wert und die Letzte Spalte den Wert für diese Zeile ist anders.

Jedoch mit
y = df.iloc[:, -1].die Werte gibt mir die Zeile Vektor-von der letzten Spalte die Werte, das ist genau das, was ich will. Warum ist die negative 1 für X, dass Sie mir den zweiten, letzten Spalte ist der Wert statt?

Python pandas: Warum ist df.iloc[:, :-1].Werte für meine Trainingsdaten wählen Sie bis nur die vorletzte Spalte?

bis in die Letzte Spalte, die aber nicht einschließlich der letzten Spalte, da python reicht / Scheiben beinhalten nicht das Ende... ich verstehe nicht, was Sie erwarten stattdessen...
wie data = [1,2,3,4,5] dann eine Scheibe bis zum letzten element data[:-1] -> [1,2,3,4] entfernen würde, die Letzte, denn der Endpunkt ist das Letzte element und Scheiben enthalten niemals den Endpunkt... genau Das ist das beabsichtigte Verhalten.
df.iloc[:, 2] wählt die zweite Spalte aber df.iloc[:, :2] oder explizit df.iloc[:, 0:2] wählt die Spalten, bis (ausschließlich) in der zweiten Spalte. Es ist das gleiche wie Python-Scheiben. Wenn du einen negativen index, ändert sich nichts. Wenn Sie sagen df.iloc[:, -1] es bedeutet die Letzte Spalte, aber df.iloc[:, :-1] bedeutet, bis die Letzte Spalte.
Oh ja, ich sehe...ich missverstanden -1 wie immer die Auswahl der letzten Spalte.
-1 indice nicht immer mit der "letzten element", sondern in Scheiben, den Endpunkt ist ausgeschlossen. Dies ist das gleiche Verhalten für positive Indizes zum Beispiel: data = "abcde" indice 2 bezieht sich auf "c" und data[:2] wird alles bis einschließlich, aber nicht c so data[:2] -> "ab"

InformationsquelleAutor kwotsin | 2016-05-29

Schreibe einen Kommentar