تغییر شکل آرایه

تغییر شکل آرایه در NumPy

در کتابخانه NumPy پایتون، تغییر شکل آرایه‌ها (Array Reshaping) یکی از اساسی‌ترین عملیات‌ها برای کار با داده‌های چندبعدی است. این قابلیت به شما اجازه می‌دهد ساختار آرایه را بدون تغییر در داده‌های اصلی، بازآرایی کنید.

تغییر شکل آرایه زمانی مفید است که بخواهید داده‌ها را برای عملیات خاصی آماده کنید یا با کتابخانه‌های دیگر سازگار نمایید.

روش‌های تغییر شکل آرایه

NumPy چندین روش برای تغییر شکل آرایه ارائه می‌دهد:

  • متد reshape(): پرکاربردترین روش برای تغییر ابعاد آرایه
  • ویژگی shape: تغییر شکل آرایه به صورت مستقیم
  • تابع ravel(): تبدیل آرایه به بعد واحد (یک‌بعدی)
  • تابع flatten(): مشابه ravel اما همیشه کپی ایجاد می‌کند
تابع/متد توضیحات
reshape بازگرداندن نمای جدید از آرایه با شکل متفاوت
resize تغییر شکل آرایه به صورت درجا (in-place)

مثال‌های کاربردی

برای درک بهتر تغییر شکل آرایه، به مثال زیر توجه کنید:

  1. ابتدا یک آرایه یک‌بعدی با 12 عنصر ایجاد می‌کنیم
  2. سپس آن را به آرایه‌ای دو بعدی با ابعاد 3x4 تبدیل می‌کنیم
  3. در نهایت می‌توانیم آن را به آرایه‌ای سه‌بعدی تغییر شکل دهیم

برای مطالعه مثال‌های کامل و کدهای اجرایی، می‌توانید اینجا را بخوانید.


نکات مهم در تغییر شکل آرایه

هنگام تغییر شکل آرایه‌ها باید به چند نکته اساسی توجه کنید:

  • تعداد کل عناصر قبل و بعد از تغییر شکل باید برابر باشد
  • مقدار -1 در reshape به معنی محاسبه خودکار آن بعد است
  • تغییر شکل ممکن است نمای جدیدی از داده ایجاد کند یا کپی بگیرد

تغییر شکل آرایه‌ها در پردازش تصویر، یادگیری ماشین و تحلیل داده‌ها کاربرد فراوانی دارد. برای مثال در شبکه‌های عصبی معمولاً باید داده‌ها را به شکل خاصی آماده کنید.