Mam następującą dataframe: DF: Nazwa została nazwana John John Kim Kimberly Chciałbym utworzyć nową kolumnę z 1 lub 0 osadzącym się, jeśli jest to mecz. Próbowałem: DF ['...

1
SOK 20 marzec 2021, 16:12

2 odpowiedzi

Najlepsza odpowiedź

Musisz zastosować funkcję na kolumnach name i givenname i w funkcji lambda x jest każdy wiersz danych, dzięki czemu dostęp do wartości kolumny name i porównać do wartości w givenname.

df['match'] = df[['name','givenname']].apply(lambda x: 1 if x.name == x.givenname else 0, axis=1)
1
yudhiesh 20 marzec 2021, 13:21

Użyj tego:-

df['match']=df.apply(lambda x: 1 if x['name'] == x['givenname'] else 0,axis=1)

Teraz, jeśli drukujesz df, otrzymasz żądane wyjście: -

    name    givenname   match
0   John    John        1
1   Kim     Kimberly    0
1
Anurag Dabas 20 marzec 2021, 13:20