[FIXED] Pandas kopieren den Wert von einer Spalte in eine andere, wenn die Bedingung erfüllt ist

Ausgabe

Ich habe einen Datenrahmen:

df = 
col1  col2  col3 
1      2     3
1      4     6
3      7     2

Ich möchte so bearbeiten df, dass, wenn der Wert von col1 kleiner als 2 ist, der Wert von genommen wird col3.

Also bekomme ich:

new_df = 
col1  col2  col3 
3      2     3
6      4     6
3      7     2

Ich habe versucht, und zu verwenden assign, df.locaber es hat nicht funktioniert.

Was ist der beste Weg, dies zu tun?

Lösung

df['col1'] = df.apply(lambda x: x['col3'] if x['col1'] < x['col2'] else x['col1'], axis=1)


Beantwortet von –
Eric Yang


Antwort geprüft von –
Candace Johnson (FixError Volunteer)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like