علوم داده

توابع دستکاری آرایه در NumPy

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) در کنسول پایتون استفاده کنید.
نمایش بیشتر

نوشته‌های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا