Ich versuche, Daten in Training, Validierung und Test mit Numpy und Pandas zu teilen.Auswählen von Zeilen basierend auf dem Bereich der Vektorwerte in Pandas
Ich weiß, das funktioniert (es ist von der sklearn
Iris Beispiel):
DataFrame['is_train'] = np.random.uniform(0, 1, len(train)) <= .75
train, test = DataFrame[DataFrame['is_train']==True], DataFrame[DataFrame['is_train']==False]
Aber wie mache ich etwas ähnliches für einen Bereich von Werten, zB .33 < x < 0,66?
funktioniert das nicht:
DataFrame['segment'] = np.random.uniform(0, 1, len(df))
DataFrame[DataFrame['segment'] < .33 & DataFrame['segment'] < .66]
Schließlich, wenn Sie einen besseren Weg bewusst sind, dann sagen beten.
Nach meinem besten Wissen, sklearn
's cross_validation.train_test_split()
macht keine Drei-Wege-Splits.
kleiner Fehler: DataFrame [DataFrame ['Segment']> .33 & DataFrame ['Segment'] <.66] Für die Antwort ist Edchum's klar und prägnant! – ysearka