Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Memohon Berbilang Penapis dengan Cekap pada Pandas DataFrames dan Siri?

Bagaimana untuk Memohon Berbilang Penapis dengan Cekap pada Pandas DataFrames dan Siri?

DDD
Lepaskan: 2024-10-20 11:58:02
asal
394 orang telah melayarinya

How to Efficiently Apply Multiple Filters to Pandas DataFrames and Series?

Penapisan Pandas DataFrames dan Siri yang Cekap

Menapis data dalam Pandas DataFrames dan Siri adalah penting untuk manipulasi dan analisis data. Untuk menggunakan berbilang penapis dengan cekap, pertimbangkan untuk memanfaatkan operator terbina dalam Pandas dan pengindeksan boolean.

Untuk DataFrame atau Siri, menyediakan operasi dan senarai nilai dalam format kamus, seperti ditunjukkan dalam contoh di bawah:

<code class="python">relops = {'>=': [1], '<=': [1]}
Salin selepas log masuk

Untuk menggunakan penapis ini:

<code class="python">import numpy as np

def boolean_filter(x, relops):
    filters = []
    for op, vals in relops.items():
        op_func = getattr(np, op)
        for val in vals:
            filters.append(op_func(x, val))

    return x[(np.logical_and(*filters))]

## Example:

df = pandas.DataFrame({'col1': [0, 1, 2], 'col2': [10, 11, 12]})

result = boolean_filter(df['col1'], {'>=': [1]})
print(result)

## Output:
# col1
# 1       1
# 2       2
# Name: col1</code>
Salin selepas log masuk

Dengan menggunakan pengindeksan boolean, kaedah ini mengelakkan penyalinan yang tidak perlu dan sangat cekap, terutamanya untuk set data yang besar.

Atas ialah kandungan terperinci Bagaimana untuk Memohon Berbilang Penapis dengan Cekap pada Pandas DataFrames dan Siri?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber: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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan