Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menggunakan Fungsi `isin` Pandas untuk Meniru Operator `IN` dan `NOT IN` SQL?

Bagaimanakah Saya Boleh Menggunakan Fungsi `isin` Pandas untuk Meniru Operator `IN` dan `NOT IN` SQL?

Susan Sarandon
Susan Sarandonasal
2024-12-21 22:25:22259semak imbas

How Can I Use Pandas' `isin` Function to Mimic SQL's `IN` and `NOT IN` Operators?

Pertanyaan Pandas DataFrames dengan Kuasa SQL's IN dan NOT IN

Menapis data dalam Pandas DataFrames ialah tugas biasa dalam pemprosesan data. Panda menyediakan pelbagai kaedah untuk mencapai ini, termasuk fungsi isin intuitif. Artikel ini menunjukkan cara anda boleh memanfaatkan isin untuk menapis data, meniru pengendali SQL IN dan NOT IN.

Memahami Masalah

SQL's IN dan NOT IN operator membenarkan anda untuk tapis data berdasarkan sama ada nilai terkandung dalam atau dikecualikan daripada senarai tertentu. Fungsi ini penting untuk mengasingkan rekod tertentu atau mengalih keluar data yang tidak diingini.

Menggunakan isin untuk Menapis Data

Panda menawarkan fungsi isin, yang beroperasi pada objek Siri. Ia mengembalikan topeng boolean yang menunjukkan sama ada setiap elemen dalam Siri sepadan dengan mana-mana nilai dalam senarai atau tatasusunan yang disediakan.

IN Penapisan

Untuk melaksanakan operasi IN, hantarkan sahaja senarai nilai yang anda mahu padankan dengan fungsi isin menggunakan sintaks berikut:

something.isin(somewhere)

TIDAK DALAM Penapisan

Untuk melakukan operasi NOT IN, gunakan operator penolakan ~ sebelum fungsi isin:

~something.isin(somewhere)

Contoh Berfungsi

Pertimbangkan DataFrame df berikut dan senarai negara untuk disimpan countries_to_keep:

df = pd.DataFrame({'country': ['US', 'UK', 'Germany', 'China']})
countries_to_keep = ['UK', 'China']

Untuk mencari baris di mana negara termasuk dalam country_to_keep:

df[df.country.isin(countries_to_keep)]

Output:

    country
1        UK
3     China

Untuk mencari baris di mana negara tidak berada termasuk dalam countries_to_keep:

df[~df.country.isin(countries_to_keep)]

Output:

    country
0        US
2   Germany

Faedah Menggunakan isin

  • Keringkas: The fungsi isin menyediakan cara ringkas untuk melakukan penapisan IN dan NOT IN, mengurangkan keperluan untuk kod berbelit.
  • Fleksibiliti: isin boleh digunakan dengan sebarang jenis Siri, termasuk rentetan, integer dan objek.
  • Kecekapan: isin menggunakan algoritma yang dioptimumkan untuk melakukan penapisan, menjadikannya cekap walaupun untuk besar set data.

Dengan memahami dan memanfaatkan fungsi isin, anda boleh menapis Pandas DataFrames dengan berkesan berdasarkan nilai dalam senarai atau tatasusunan yang anda tentukan, memperkasakan tugas pemprosesan data anda dengan kuasa SQL's IN dan NOT IN pengendali.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Fungsi `isin` Pandas untuk Meniru Operator `IN` dan `NOT IN` SQL?. 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