Cara menggunakan fungsi where() di pandas (dengan contoh)


Fungsi Where() dapat digunakan untuk mengganti nilai tertentu di pandas DataFrame.

Fungsi ini menggunakan sintaks dasar berikut:

 df. where (cond, other=nan)

Untuk setiap nilai dalam pandas DataFrame di mana cond adalah True, nilai asli dipertahankan.

Untuk setiap nilai di mana cond adalah False, nilai asli diganti dengan nilai yang ditentukan oleh argumen lainnya .

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya dengan pandas DataFrame berikut:

 import pandas as pd

#define DataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

Contoh 1: Ganti nilai di seluruh DataFrame

Kode berikut menunjukkan cara menggunakan fungsi Where() untuk mengganti semua nilai yang tidak memenuhi kondisi tertentu di seluruh pandas DataFrame dengan nilai NaN.

 #keep values that are greater than 7, but replace all others with NaN
df. where (df>7)

	points assists rebounds
0 25 NaN 11.0
1 12 NaN 8.0
2 15 NaN 10.0
3 14 9.0 NaN
4 19 12.0 NaN
5 23 9.0 NaN
6 25 9.0 9.0
7 29 NaN 12.0

Kita juga bisa menggunakan argumen lain untuk mengganti nilai dengan sesuatu selain NaN.

 #keep values that are greater than 7, but replace all others with 'low'
df. where (df>7, other=' low ')

	points assists rebounds
0 25 low 11
1 12 low 8
2 15 low 10
3 14 9 low
4 19 12 low
5 23 9 low
6 25 9 9
7 29 low 12

Contoh 2: Ganti nilai di kolom DataFrame tertentu

Kode berikut menunjukkan cara menggunakan fungsi Where() untuk mengganti semua nilai yang tidak memenuhi kondisi tertentu di kolom tertentu DataFrame.

 #keep values greater than 15 in 'points' column, but replace others with 'low'
df[' points '] = df[' points ']. where (df[' points ']>15, other=' low ')

#view DataFrame
df

	points assists rebounds
0 25 5 11
1 low 7 8
2 low 7 10
3 low 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

Anda dapat menemukan dokumentasi online lengkap untuk fungsi pandaswhere() di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara menggunakan fungsi umum lainnya di panda:

Cara menggunakan fungsi deskripsikan() di Pandas
Cara menggunakan fungsi idxmax() di Pandas
Cara menerapkan fungsi ke kolom yang dipilih di Pandas

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *