در NumPy، آرایه ها با ساختار ndarray
(آرایه با ابعاد دلخواه) ذخیره می شوند. اغلب اوقات، نیاز به تغییر شکل یا بازآرایی آرایه ها برای مطابقت با نیازهای خاص پردازش یا تجزیه و تحلیل داده ها وجود دارد. NumPy توابع و روش های مختلفی را برای این منظور ارائه می دهد.
۱. تغییر شکل آرایه:
تغییر شکل به معنای تغییر ابعاد یک آرایه بدون تغییر محتوای آن است.
- استفاده از
np.reshape()
:
Python
import numpy as np
arr = np.array([۱, ۲, ۳, ۴, ۵, ۶])
# تغییر شکل آرایه به ۲ سطر و ۳ ستون
reshaped_arr = np.reshape(arr, (۲, ۳))
print(reshaped_arr)
# Output:
# [[۱ ۲ ۳]
# [۴ ۵ ۶]]
- استفاده از
arr.reshape()
:
Python
# تغییر شکل آرایه به ۲ سطر و ۳ ستون (معادل روش قبلی)
reshaped_arr = arr.reshape(۲, ۳)
print(reshaped_arr)
۲. ترتیب مجدد آرایه:
بازآرایی به معنای تغییر ترتیب عناصر یک آرایه در داخل ابعاد موجود آن است.
- استفاده از
np.sort()
:
Python
import numpy as np
arr = np.array([۵, ۲, ۴, ۱, ۳])
# مرتب کردن عناصر آرایه به صورت صعودی
sorted_arr = np.sort(arr)
print(sorted_arr) # Output: [1 2 3 4 5]
- استفاده از
arr.sort()
:
Python
# مرتب کردن عناصر آرایه به صورت نزولی
arr.sort(descending=True)
print(arr) # Output: [5 4 3 2 1]
- استفاده از مرتب سازی بر اساس شرط:
Python
import numpy as np
arr = np.array([('Alice', ۳۰), ('Bob', ۲۵), ('Charlie', ۲۲)])
# مرتب کردن آرایه بر اساس ستون دوم (سن) به صورت صعودی
sorted_arr = np.sort(arr, order='age')
print(sorted_arr)
# Output: [('Charlie', 22) ('Bob', 25) ('Alice', 30)]
۳. توابع دیگر:
np.ravel()
: تبدیل یک آرایه چند بعدی به یک آرایه تک بعدیnp.transpose()
: جابجایی سطرها و ستون های یک آرایهnp.flip()
: معکوس کردن ترتیب عناصر در یک آرایه
نکات:
- هنگام تغییر شکل آرایه، تعداد عناصر باید حفظ شود.
- می توانید از توابع NumPy مانند
np.prod()
برای بررسی تعداد عناصر یک آرایه قبل و بعد از تغییر شکل استفاده کنید. - برای اطلاعات بیشتر در مورد تغییر شکل و بازآرایی آرایه ها در NumPy، به مستندات رسمی NumPy (https://numpy.org/doc/) مراجعه کنید.
با تسلط بر روش های تغییر شکل و بازآرایی آرایه ها در NumPy، می توانید به طور موثر از این کتابخانه قدرتمند برای سازماندهی، دستکاری و آماده سازی داده ها برای تجزیه و تحلیل و محاسبات در برنامه های پایتون خود استفاده کنید.