Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana Menggunakan Operator Logik dengan Betul untuk Pengindeksan Boolean dalam Panda?

Bagaimana Menggunakan Operator Logik dengan Betul untuk Pengindeksan Boolean dalam Panda?

Patricia Arquette
Patricia Arquetteasal
2024-12-18 05:38:10613semak imbas

How to Correctly Use Logical Operators for Boolean Indexing in Pandas?

Operator Logik untuk Pengindeksan Boolean dalam Panda

Semasa bekerja dengan pengindeksan Boolean dalam Pandas, seseorang mungkin menghadapi ralat semasa cuba menggunakan dan operator secara langsung dengan perbandingan Siri, seperti yang dilihat dalam contoh berikut:

a[(a['some_column']==some_number) and (a['some_other_column']==some_other_number)]

Ini akan mengakibatkan ValueError kerana Python tidak boleh memberikan nilai Boolean kepada tatasusunan dengan berbilang elemen. Sebaliknya, kita mesti menggunakan & operator untuk operasi logik dan elemen mengikut unsur:

a[(a['some_column']==some_number) & (a['some_other_column']==some_other_number)]

Perbezaan ini timbul kerana operator dan melakukan penilaian Boolean, manakala operator & menjalankan operasi logik mengikut elemen. Apabila menilai perbandingan Siri dengan dan, Python tidak dapat menentukan cara mengendalikan kekaburan pemberian nilai Boolean kepada koleksi elemen.

Untuk memastikan operasi logik yang betul mengikut elemen, kurungan adalah penting dalam ungkapan yang melibatkan & pengendali. Mengabaikan tanda kurung boleh membawa kepada susunan penilaian yang tidak diingini, seperti:

a['x']==1 & a['y']==10

Yang akan ditafsirkan sebagai:

(a['x'] == 1) & (a['y'] == 10)

Sebaliknya, ungkapan yang betul ialah:

(a['x']==1) & (a['y']==10)

Dengan memahami perbezaan antara penilaian Boolean dan operasi logik mengikut unsur, anda boleh menggunakan operator logik dengan berkesan untuk pengindeksan Boolean dalam Panda.

Atas ialah kandungan terperinci Bagaimana Menggunakan Operator Logik dengan Betul untuk Pengindeksan Boolean dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn