به جای ایندکس، slice را پاس می دهیم، به این شکل:
[start : end]
همچنین ما می توانیم step (گام) را هم مشخص کنیم، به شکل زیر:
[start : end : step]
اگر ما مقدار start را مشخص نکنیم ، به شکل پیش فرض برای آن 0 در نظر می گیرد.
و اگر مقدار end را مشخص نکنیم، به شکل پیش فرض طول آرایه در آن بعد برای آن در نظر گرفته می شود.
و در آخر اگر مقدار step را مشخص نکنیم، به شکل پیش فرض برای آن 1 در نظر گرفته می شود.
مثال: در آرایه زیر، از index 1 تا index 5 برش داده می شود.
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[1:5])
نکته: خروجی، شامل مقدار شروع می شود ولی مقدار پایان را در نظر نمی گیرد.
مثال: در آرایه زیر، برش از index شماره 4 شروع و تا انتهای آرایه ادامه پیدا می کند.
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[4:])
مثال: در آرایه زیر، برش از ابتدای آرایه تا index شماره 4 (خود index شماره 4 را شامل نمی شود) انجام می دهد.
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[:4])
برش آرایه از انتها با نامپای در پایتون
برای برش آرایه از انتها، از عملگر منفی (-) استفاده کنید.
مثال: در زیر، برش از index شماره 3 از انتها، تا index شماره 1 از انتها انجام می شود.
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[-3:-1])
Step (گام) در نامپای بخش آرایه
با استفاده از مقدار step، تعداد گام های برش را می توانید مشخص کنید.
مثال: در زیر مثالی از گام های برش را برای شما آورده ایم.
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[1:5:2])
مثال: در آرایه زیر یکی در میان عناصر آرایه را برش داده ایم.
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[::2])
برش آرایه های 2 بعدی با نامپای پایتون
مثال: در زیر یک آرایه 2 بعدی داریم که در بعد دوم از index شماره 1 تا index شماره 4 (که شامل نمی شود) را برش می دهد.
import numpy as np
arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])
print(arr[1, 1:4])
نکته: به یاد داشته باشید که بعد دوم دارای شماره index 1 است.
مثال: در زیر از هر دو بعد، index شماره 2 را برش می دهد
import numpy as np
arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])
print(arr[0:2, 2])
مثال: در زیر از هر دو بعد، از index شماره 1 تا index شماره 4 (شامل نمی شود) برش داده می شود، نتیجه یک آرایه دو بعدی خواهد بود.
import numpy as np
arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])
print(arr[0:2, 1:4])