Filter آرایه در Numpy

به خارج کردن برخی از عناصر از یک آرایه موجود و ایجاد یک آرایه جدید از آنها، فیلتر کردن گفته می شود.

برای فیلتر کردن آرایه ها ما از بولین ها کمک میگیریم به نحوی که True برای داده ایی به معنی واجد شرایط و فیلتر شدنه و False به معنی دارای شرایط نبودنه در مثال زیر با کمک یک لیست از بولین ها یک آرایه را فیلتر کرده ایم:

x = [True, False, True, False]

آرایه فیلتر کننده Numpy

استفاده از یک لیست شامل تعداد برابر با آرایه اصلی ساخته شده از بولین ها سخت و برای آرایه های بزرگ غیرمنطقی است.

اینجاست که ما کمک آرایه فیلتر کننده و حلقه های پیمایشگر و شرط ها کار را بسیار آسان تر میکنیم در مثال کامل متوجه موضوع خواهید شد:

if element > 42:
    filter_arr.append(True)
  else:
    filter_arr.append(False)

در مثال بالا ما یک آرایه خالی درست کردیم که همان آرایه فیلتر است بعد با یک حلقه داخل آرایه پیماش کردیم و با شرط تمام عناصر را بررسی کردیم اگر عنصری شامل شرایط ما میشد آن را به داخل آرایه فیلتر کنند با دستور append که قبلا خوانده ایم اضافه میکنیم.

فیلتر کردن آرایه بصورت مستقیم در Numpy

در روش بالا از یک منطق پایتونی استفاده کردیم که یک کد کاملا درست بود اما نامپای به سادگی و زیبایی شناخته میشه پس راه کوتاه تری هم وجود دارد.

شما میتونید بصورت مستقیم از آرایه فیلتر کننده با یک خط کد آرایه مورد نظر را فیلتر و داخل آرایه فیلتر کننده بریزید:

filter_arr = arr > 42

در مثال زیر ما اعداد زوج رو جدا میکنیم :

filter_arr = arr % 2 == 0

خلاصه درس

تمرین


مشاهده پاسخ
توسعه دهندگان
امیر ارسلان میرزایی