Pandas: pilih baris dari dataframe menggunakan seri boolean


Anda dapat menggunakan sintaks dasar berikut untuk memilih baris dalam pandas DataFrame berdasarkan nilai seri Boolean:

 #define boolean series
bools = pd. Series ([ True , False , True , True , False , False , False , True ])

#select rows in DataFrame based on values in boolean series
df[bools. values ]

Ini memungkinkan Anda memilih setiap baris di pandas DataFrame yang nilai terkaitnya dalam rangkaian Boolean adalah True .

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Pilih Baris di Pandas DataFrame Menggunakan Seri Boolean

Misalkan kita memiliki pandas DataFrame berikut yang berisi informasi tentang berbagai pemain bola basket:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

  team points assists rebounds
0 A 18 5 11
1 B 22 7 8
2 C 19 7 10
3 D 14 9 6
4 E 14 12 6
5 F 11 9 5
6 G 20 9 9
7:28 4 12

Kita dapat menggunakan sintaks berikut untuk memilih semua baris di DataFrame yang nilai terkaitnya dalam rangkaian Boolean adalah True :

 #define boolean series
bools = pd. Series ([ True , False , True , True , False , False , False , True ])

#select rows in DataFrame based on values in boolean series
df[bools. values ]

     team points assists rebounds
0 A 18 5 11
2 C 19 7 10
3 D 14 9 6
7:28 4 12

Perhatikan bahwa satu-satunya baris yang dikembalikan adalah baris yang nilai terkaitnya dalam rangkaian Boolean adalah True .

Perhatikan juga bahwa Anda dapat menggunakan sintaks berikut untuk memilih hanya baris di kolom “poin” DataFrame yang nilai terkaitnya dalam rangkaian Boolean adalah True .

 #define boolean series
bools = pd. Series ([ True , False , True , True , False , False , False , True ])

#select rows in points column based on values in boolean series
df[' points '][bools. values ]

0 18
2 19
3 14
7 28
Name: points, dtype: int64

Perhatikan bahwa satu-satunya baris yang dikembalikan oleh kolom “poin” adalah baris yang nilai terkaitnya dalam deret Boolean adalah True .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:

Cara memfilter baris berdasarkan panjang string di Pandas
Cara memilih baris tanpa nilai NaN di Pandas
Cara memilih baris berdasarkan nilai kolom di Pandas

Tambahkan komentar

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