Ich habe einige große csv-Dateien, die ich importiert habe. Ich habe einige spezifische Spalten extrahiert, um eine neue Matrix nur mit diesen Spalten zu erstellen. Ich habe verkettet, um die Spalten nebeneinander zu platzieren. Jetzt möchte ich diese Matrix in zwei kleinere teilen, indem ich einige Zeilen daraus extrahiere. Ich weiß nicht, warum ich den Fehler immer wieder bekomme, wenn ich die Pop-Funktion für die verketteten Daten verwende.Pop nach Verkettung
data_set=[annual_inc, delinq_2yrs, dti, emp_length, loan_amnt, installment, int_rate, open_acc, total_acc, pub_rec, acc_now_delinq, loan_stat]
result=pd.concat(data_set,axis=1)
def splitDataSet(x, splitRatio):
trainSize = int(len(x)*splitRatio)
trainSet=[]
copy=x
while len(trainSet)<trainSize:
index=random.randrange(len(copy))
trainSet.append(copy.pop(index))
return[trainSet, copy]
splitRatio=0.67
train, test=splitDataSet(result, splitRatio)
print(train)
Wenn ich Pop auf DATA_SET verwenden, bevor es verketteten wurde es funktioniert, aber dann entfernt er die entsprechende Spalte und es ist nicht das, was ich suche. Zum Beispiel nach dem Befehl
result.pop(0)
I erhalten, um den Fehler 'KeyError: 0'
ich einfach Zeile entfernen möchte ‚0‘ aus dem Array result
PS: I weggelassen, um die Zeilen von Anfang an wie Importen und einig variable Vorverarbeitung. Wenn jemand es braucht, kann ich es einfügen.
bearbeiten Sie bitte, fügen Sie die Ausgabe, die Sie erhalten, und die gewünschte Ausgabe hinzu – 16num