אינדוקס בסיסי
שיעור 10 מתוך 18 בקורס יסודות NumPy של Coddy.
אפשר לאנדקס מערכים חד־ממדיים של Numpy כמו רשימות Python:
אינדוקס של רשימת Python:
lst = [1, 2, 3, 4]
lst[1] # --> 2אינדוקס של מערך Numpy:
ary = np.array([1, 2, 3, 4])
ary[1] # --> 2אבל העניינים נעשים מעניינים כשיש יותר מממד אחד.
אינדוקס של רשימת Python דו־ממדית:
lst = [[1, 2], [3, 4]]
lst[0][1] # --> 2אינדוקס של מערך Numpy דו־ממדי:
ary = np.array([[1, 2], [3, 4]])
ary[0,1] # --> 2 שימו לב להבדל: ary[0,1], lst[0][1]
אפשר להשתמש באותו תחביר כמו ברשימות עם מערכי Numpy: ary[0][1], אבל זה לא יעיל, ועדיף להשתמש ב־ary[0, 1]
ary[0][1]פחות יעיל כי אחרי האינדקס הראשון נוצר מערך זמני חדש, ולאחר מכן מתבצע בו אינדוקס לפי 1.
איך מאנדקסים מערך תלת־ממדי?
ary = np.array([
[[1], [2]],
[[3], [4]]
])
ary[0, 0, 0] # --> 1
ary[0, 1, 0] # --> 2
ary[1, 0, 0] # --> 3
ary[1, 1, 0] # --> 4השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
אתגר
קלאחזר את האיבר (באמצעות אינדוקס) שמכיל את הערך 5 מתוך המערך התלת־ממדי ary
נסו בעצמכם
import numpy as np
ary = np.array([ [ [ 0, 1 ], [ 2, 3 ] ], [ [ 4, 5 ], [ 6, 7 ] ] ])
res = ary[] # <-- Complete the indexing
print(res) # Don't touch
כל השיעורים ביחידה יסודות NumPy
3אינדוקס מערך NumPy
אינדוקס בסיסיחיתוךאינדוקס מערכיםאינדוקס לפי ממדיםאינדוקס בוליאניאינדוקס לפי תנאים מרוביםתרגלו בעצמכם: קומפיילר Python אונליין