اتصال آرایه ها در numpy

اتصال آرایه‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌ها در numpy | تابع concatenate3 دقیقه مطالعه

هدیه فنولوژی به شما!

اتصال (joining) آرایه‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌ها در numpy بدین معناست که داده‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌های موجود در دو یا چند آرایه را در داخل یک آرایه قرار دهیم. پیش از آشنایی با توابع مناسب برای این انجام این کار، لازم است تا با مفهوم محور (axis) در آرایه آشنا شویم.

محور در آرایه numpy چیست؟

مفهوم محور در آرایه، تقریبا شبیه به مفهوم بعد است. در بعضی از توابع numpy مانند تابع  sum، هنگام کار با آرایه‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌ها، می‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌توان مشخص کرد که آرایه‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌ها چگونه با یکدیگر ترکیب شوند. برای روشن شدن موضوع، آرایه دو بعدی زیر را در نظر بگیرید:

,[A = [ [1, 2, 3

          [ [۴, ۵, ۶]                   

این آرایه‌ دو بعدی، از دو آرایه یک بعدی تشکیل شده است؛ هر یک از آرایه‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌های یک بعدی نیز سه درایه‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌ی اسکالر دارند.

جمع درایه‌های آرایه‌ی بالا به روش‌های مختلفی امکان‌پذیر است. دو روش مهم جمع درایه‌های آرایه عبارتند از:

راه اول (جمع درایه‌های هر ستون):

[Sum = [5, 7, 9

راه دوم (جمع درایه‌های هر سطر):

[Sum = [6, 15

البته در هر روش می‌توان بعد آرایه را حفظ کرد و آن را به شکل مسطح ننوشت. اصطلاحا در راه اول می‌گوییم جمع را حول محور صفر (axis = 0) انجام داده‌ایم و در راه دوم، جمع را حول محور یک (axis = 1) انجام داده‌ایم. در واقع در محور صفر، به شکل ستونی به مسئله نگاه می‌کنیم و در محور یک، به شکل سطری.

اتصال آرایه‌ها در numpy با استفاده از تابع concatenate

این تابع، دو یا چند آرایه را به صورت یک تاپل می‌گیرد و آن‌ها را به هم متصل می‌کند. به مثال زیر توجه کنید:

برای آرایه‌‌های دو بعدی مسئله کمی متفاوت است؛ محور نیز مهم می‌شود. به دو مثال زیر توجه کنید (در حالت اولی که محور بیان نمی‌شود، به صورت پیش فرض، صفر در نظر گرفته می‌شود):

خروجی:

,[۲ ,۱] ]

  ,[۴ ,۳]    

  ,[۶ ,۵]    

 [ [۸ ,۷]    

خروجی:

,[۵ ,۵ ,۲ ,۱] ] 

 [ [۸ ,۷ ,۴ ,۳]     

آموزش numpy

اتصال آرایه‌‌ها در numpy با استفاده از تابع stack

تابع stack نیز مانند concatenate عمل می‌‌کند اما محورهای آرایه نهایی کمی متفاوت است. به مثال زیر توجه کنید:

در این حالت، اعداد موجود در ستون‌‌‌های مشابه یک آرایه شکل می‌‌‌دهند و در نهایت به آرایه زیر می‌‌‌رسیم:

,[۱ ,۴] ]

,[۲ ,۵]  

 [ [۳ ,۶]    

اگر محور را صفر در نظر بگیریم، آرایه زیر حاصل می‌‌‌‌شود:

,[۳ ,۲ ,۱] ]

[ [۶ ,۵ ,۴]   

توجه دارید که نتیجه حاصل شده با استفاده از ‌‌‌‌تابع stack با نتیجه به دست آمده با تابع concatenate متفاوت است.

با استفاده از تابع hstack می‌‌‌‌‌توانید کاری مشابه تابع concatenate حول محور صفر برای آرایه‌‌‌‌‌های یک بعدی انجام دهید. به مثال زیر توجه کنید:

تابع vstack نیز به شکل ستونی، آرایه‌‌‌‌‌‌ها را به هم متصل می‌‌‌‌‌‌کند.
تیم محتوایی فنولوژی
تیم محتوایی فنولوژی
گروهی از متخصصان حوزه‌های مختلف
عضویت
اطلاع از
0 دیدگاه‌ها
بازخورد در متن
دیدن همه دیدگاه‌ها

فنولوژی را در شبکه‌های اجتماعی دنبال کنید

©۲۰۲۰ – کلیه حقوق مادی و معنوی متعلق به فنولوژی است.