NumPy طیف گسترده ای از توابع را برای دستکاری و تغییر ساختار آرایه ها به منظور برآورده کردن نیازهای مختلف پردازش و تجزیه و تحلیل داده ارائه می دهد. در این بخش، به توابع دستکاری آرایه در NumPy می پردازیم.
1. تغییر شکل آرایه:
np.reshape()
: تغییر ابعاد آرایه بدون تغییر محتوای آن.arr.reshape()
: مشابهnp.reshape()
, اما به طور مستقیم روی آرایه اعمال می شود.
Python
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
# تغییر شکل آرایه به 2 سطر و 3 ستون
reshaped_arr = np.reshape(arr, (2, 3))
print(reshaped_arr)
# Output:
# [[1 2 3]
# [4 5 6]]
# تغییر شکل آرایه به 2 سطر و 3 ستون (معادل روش قبلی)
reshaped_arr = arr.reshape(2, 3)
print(reshaped_arr)
2. جابجایی:
np.transpose()
: جابجایی سطرها و ستون های آرایه.
Python
import numpy as np
arr = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
# جابجایی سطرها و ستون ها
transposed_arr = np.transpose(arr)
print(transposed_arr)
# Output:
# [[1 4 7]
# [2 5 8]
# [3 6 9]]
3. ترکیب:
np.stack()
: ترکیب آرایه ها در امتداد محور جدید.
Python
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
arr3 = np.array([7, 8, 9])
# ترکیب آرایه ها به صورت عمودی (محور 0)
stacked_arr = np.stack((arr1, arr2, arr3))
print(stacked_arr)
# Output:
# [[1 4 7]
# [2 5 8]
# [3 6 9]]
# ترکیب آرایه ها به صورت افقی (محور 1)
stacked_arr = np.stack((arr1, arr2, arr3), axis=1)
print(stacked_arr)
# Output:
# [[1 2 3]
# [4 5 6]
# [7 8 9]]
4. جداسازی:
np.split()
: تقسیم یک آرایه به چندین آرایه کوچکتر در امتداد محور مشخص.
Python
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
# تقسیم آرایه به 3 آرایه مساوی
split_arrays = np.split(arr, 3)
print(split_arrays)
# Output: [array([1, 2]), array([3, 4]), array([5, 6])]
# تقسیم آرایه با نسبت های دلخواه
split_arrays = np.split(arr, [2, 4])
print(split_arrays)
# Output: [array([1, 2]), array([3, 4]), array([5, 6])]
5. توابع دیگر:
np.ravel()
: تبدیل یک آرایه چند بعدی به یک آرایه تک بعدیnp.hstack()
: ترکیب آرایه ها به صورت افقیnp.vstack()
: ترکیب آرایه ها به صورت عمودیnp.tile()
: تکرار یک آرایه تعداد مشخصی از دفعات
نکات:
- برای اطلاعات بیشتر در مورد هر تابع، می توانید از دستور
np.help(function_name)
در کنسول پایتون استفاده کنید.