Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Semak dengan Cekap sama ada Siri Pandas Mengandungi Mana-mana Subrentetan daripada Senarai Diberikan?

Bagaimanakah Saya Boleh Semak dengan Cekap sama ada Siri Pandas Mengandungi Mana-mana Subrentetan daripada Senarai Diberikan?

Susan Sarandon
Lepaskan: 2024-11-30 01:37:10
asal
997 orang telah melayarinya

How Can I Efficiently Check if a Pandas Series Contains Any Substring from a Given List?

Menguji Kemasukan Subrentetan Rentetan dalam Panda

Mencari kaedah yang cekap untuk menentukan sama ada rentetan dalam siri Pandas mengandungi mana-mana senarai tertentu subrentetan? Pertanyaan mengenai perkara ini boleh dilihat di bawah:

Pertanyaan Asal:

Adakah terdapat fungsi panda yang menggabungkan fungsi df.isin() dan df[col] .str.contains()? Saya berhasrat untuk mengenal pasti semua keadaan di mana siri mengandungi sebarang subrentetan daripada senarai yang diberikan.

Penyelesaian Cadangan:

Satu pendekatan yang dicadangkan dalam forum menggunakan pemahaman gelung dan senarai untuk menyemak setiap subrentetan dalam siri. Walau bagaimanapun, penyelesaian yang lebih ringkas dan cekap wujud.

Penyelesaian Berasaskan Regex:

Memanfaatkan regex | operator, seseorang boleh membina regex yang sepadan dengan setiap subrentetan dalam senarai yang diberikan. Regex ini kemudiannya boleh digunakan dengan str.contains untuk menapis siri untuk nilai yang diingini.

import re

searchfor = ['og', 'at']
regex = '|'.join(searchfor)
df['matching_column'][df['matching_column'].str.contains(regex)]
Salin selepas log masuk

Pendekatan ini lebih cekap daripada kaedah berulang dan berkesan mencapai hasil yang diinginkan.

Mengendalikan Aksara Khas:

Jika subrentetan mengandungi aksara khas dengan kepentingan regex, seperti sebagai $ atau ^, mereka harus dilepaskan menggunakan re.escape() untuk memastikan ia ditafsirkan secara literal.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Semak dengan Cekap sama ada Siri Pandas Mengandungi Mana-mana Subrentetan daripada Senarai Diberikan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan