جستجوی آرایههای NumPy
- صفحه قبل پارتیشن آرایههای NumPy
- صفحه بعدی ترتیب آرایههای NumPy
جستجو در آرایه
میتوانید در آرایهای به دنبال یک ارزش خاص بگردید و سپس شمارههای تطابق یافته را بازگردانید.
برای جستجو در آرایه، از where()
روش.
مثال
برای پیدا کردن شمارهای که برابر با 4 است، شمارههای مربوطه را پیدا کنید:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 4, 4]) x = np.where(arr == 4) print(x)
در مثال بالا یک تورپل بازمیگرداند:(array([3, 5, 6],)
یعنی ارزش 4 در شماره 3، 5 و 6 قرار دارد.
مثال
برای پیدا کردن شمارهای که برابر با صفر است، شمارههای مربوطه را پیدا کنید:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 0) print(x)
مثال
برای پیدا کردن شمارهای که برابر با یک است، شمارههای مربوطه را پیدا کنید:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 1) print(x)
ترتیب جستجو
یک نام دارد searchsorted()
این روش در آرایهها عملیات جستجوی دودویی انجام میدهد و شمارهای که در آن باید ارزش مشخصی را قرار دهید تا به ترتیب جستجو حفظ شود را بازمیگرداند.
تصور کنید searchsorted()
این روش برای مرتبسازی آرایهها استفاده میشود.
مثال
برای پیدا کردن شاخصی که باید مقدار 7 را در آن قرار دهیم، جستجو کنید:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7) print(x)
توضیح مثال:باید عدد 7 را در شاخص 1 قرار دهیم تا ترتیب مرتب باقی بماند.
این روش از سمت چپ شروع به جستجو میکند و اولین شاخصی که در آن عدد 7 دیگر از مقدار بعدی بزرگتر نیست را بازمیگرداند.
جستجو از سمت راست
به طور پیشفرض، شاخص سمت چپ بازگردانده میشود، اما میتوانیم side='right'
برای بازگرداندن شاخص سمت راست.
مثال
برای پیدا کردن شاخصی که باید مقدار 7 را در آن قرار دهیم، از سمت راست جستجو کنید:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7, side='right') print(x)
توضیح مثال:باید عدد 7 را در شاخص 2 قرار دهیم تا ترتیب مرتب باقی بماند.
این روش از سمت راست شروع به جستجو میکند و اولین شاخصی که در آن عدد 7 دیگر از مقدار بعدی کوچکتر نیست را بازمیگرداند.
مقادیر چندگانه
برای جستجو کردن چندین مقدار، از آرایهای که دارای مقادیر مشخص شده است استفاده کنید.
مثال
برای پیدا کردن جایی که باید مقادیر 2، 4 و 6 را قرار دهیم، جستجو کنید:
import numpy as np arr = np.array([1, 3, 5, 7]) x = np.searchsorted(arr, [2, 4, 6]) print(x)
مقدار بازگشتی یک آرایه است:[1 2 3]
این شامل سه شاخص است که در آنها 2، 4 و 6 را در آرایه اصلی به ترتیب قرار میدهند.
- صفحه قبل پارتیشن آرایههای NumPy
- صفحه بعدی ترتیب آرایههای NumPy