אינדוקס לפי תנאים מרובים
שיעור 15 מתוך 18 בקורס יסודות NumPy של Coddy.
למדנו כיצד להחיל תנאים, אבל לפעמים אנחנו רוצים להחיל כמה תנאים בו־זמנית.
ב-Python משתמשים בדרכים הבאות כדי לשלב תנאים שונים: and or not
ב-numpy זה שונה.
אנחנו משתמשים ב:
| Python | Numpy |
| and | & |
| or | | |
| not | ~ |
הערה: כל תנאי חייב להיות בתוך סוגריים (). הסתכלו בדוגמאות כדי להבין למה הכוונה.
דוגמה 1
אחזרו את כל האיברים שגדולים מ-5 וגם קטנים מ-10
ary = np.array([1, 2, 3, 5, 8, 3, 9, 10, 2])
ary[(ary > 5) & (ary < 10)]
>>> [8, 9]דוגמה 2
אחזרו את כל האיברים שקטנים מ-3 או גדולים מ-7
ary = np.array([1, 5, 2, 3, 8, 7])
ary[(ary < 3) | (ary > 7)]
>>> [1, 2, 8]דוגמה 3
אחזרו את כל האיברים שאינם שווים ל-5
ary = np.array([1, 5, 2])
ary[~(ary == 5)]
>>> [1, 2]
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
אתגר
קלצרו פונקציה בשם condition_master שמקבלת רשימת python ומחזירה את כל האיברים שקטנים או שווים ל־0 או גדולים מ־5 ואינם שווים ל־10.
החזירו את התוצאה כרשימת python
- כדי להמיר מערך של numpy לרשימת python השתמשו ב־
str(list(ary))
נסו בעצמכם
import numpy as np
def condition_master(lst):
# Complete here
כל השיעורים ביחידה יסודות NumPy
3אינדוקס מערך NumPy
אינדוקס בסיסיחיתוךאינדוקס מערכיםאינדוקס לפי ממדיםאינדוקס בוליאניאינדוקס לפי תנאים מרוביםתרגלו בעצמכם: קומפיילר Python אונליין