Cara membandingkan tiga kolom di pandas (dengan contoh)
Anda dapat menggunakan sintaks dasar berikut untuk membandingkan nilai tiga kolom di panda:
df[' all_matching '] = df. apply ( lambda x: x.col1 == x.col2 == x.col3 , axis = 1 )
Sintaks ini membuat kolom baru bernama all_matching yang mengembalikan True jika semua kolom memiliki nilai yang cocok, jika tidak maka akan mengembalikan False .
Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.
Contoh: Bandingkan tiga kolom di Pandas
Misalkan kita memiliki panda DataFrame berikut dengan tiga kolom:
import pandas as pd #createDataFrame df = pd. DataFrame ({' A ': [4, 0, 3, 3, 6, 8, 7, 9, 12], ' B ': [4, 2, 3, 5, 6, 4, 7, 7, 12], ' C ': [4, 0, 3, 5, 5, 10, 7, 9, 12]}) #view DataFrame print (df) ABC 0 4 4 4 1 0 2 0 2 3 3 3 3 3 5 5 4 6 6 5 5 8 4 10 6 7 7 7 7 9 7 9 8 12 12 12
Kita dapat menggunakan kode berikut untuk membuat kolom baru bernama all_matching yang mengembalikan True jika ketiga kolom cocok dalam baris tertentu dan False jika tidak:
#create new column that displays whether or not all column values match df[' all_matching '] = df. apply ( lambda x: x. A == x. B == x. C , axis = 1 ) #view updated DataFrame print (df) ABC all_matching 0 4 4 4 True 1 0 2 0 False 2 3 3 3 True 3 3 5 5 False 4 6 6 5 False 5 8 4 10 False 6 7 7 7 True 7 9 7 9 False 8 12 12 12 True
Kolom baru bernama all_matching menunjukkan apakah nilai dalam tiga kolom cocok atau tidak pada baris tertentu.
Misalnya:
- Ketiga nilai cocok di baris pertama, sehingga True dikembalikan.
- Tidak semua nilai cocok dengan baris kedua, jadi False dikembalikan.
Dan seterusnya.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:
Cara mengganti nama kolom di Pandas
Bagaimana cara menambahkan kolom ke Pandas DataFrame
Bagaimana mengubah urutan kolom di Pandas DataFrame