در این شماره به معرفی انواع داده و استخراج اطلاعات از آرایهها در محیط پایتون پرداخته میشود. یکی از موارد مهم برای آنالیز دادهها، شناخت نوع داده است تا بتوان با توجه به نوع داده از تحلیل متناسب با آن استفاده کرد. در پایتون به صورت پیش فرض، دادهها به صورت زیر تعریف شدهاند.
انواع داده در NumPy
کتابخانه NumPy دارای چند نوع داده اضافی است و به انواع داده با یک کاراکتر اشاره میکند، مانند i برای اعداد صحیح، u برای اعداد صحیح بدون علامت و غیره. در جدول ۱، لیستی از انواع دادهها در NumPy و کاراکترهای مورد استفاده برای نمایش آنها نشان داده است.
جدول ۱
بررسی نوع داده یک آرایه
شی آرایه NumPy دارای خاصیتی به نام dtype است که نوع داده آرایه را برمیگرداند. برای اینکه نوع داده یک آرایه را مشخص کنید میتوانید به صورت مثالهای ذکر شده در شکل 1 اقدام کنید. همانطور که در این شکل مشاهده میکنید آرایهها میتوانند از نوع عدد صحیح، رشته، بولین، اعشاری و مختلط باشند.
شکل 1) نمایش نوع داده یک آرایه
ایجاد آرایه با نوع داده تعریف شده
از تابع ()array برای ایجاد آرایهها استفاده میشود، این تابع میتواند یک آرگومان اختیاری به نام dtype داشته باشد که به ما امکان میدهد نوع داده مورد انتظار المانهای یک آرایه را تعریف کنیم. به طور مثال در شکل 2، با توجه به اینکه آرایه از نوع صحیح تعریف شده است اما به کمک dtype این اعداد به صورت رشته نمایش داده میشوند. همچنین در صورتیکه بخواهید تعداد بایتهای در نظرگرفته شده برای عناصر یک آرایه را مشخص کنید میتوانید مانند مثال ذکر شده در شکل 2 عمل کنید. همانطور که مشاهده میشود برای اعداد صحیح 2 بایت معادل 32 بیت در نظر گرفته شده است. به جای i میتوانید از سایر فرمتهای داده شامل u, f, S و U نیز استفاده کنید.
شکل 2) تغییر در فرمت داده و تعداد بایتهای اختصاص داده شده به عناصر آرایه
تعیین شکل آرایه
شکل یک آرایه تعداد عناصر در هر بعد است. آرایههای NumPy دارای یک ویژگی به نام shape هستند که یک تاپل را با هر شاخص دارای تعداد عناصر مربوطه برمیگرداند. برای نمایش شکل یک آرایه از دستور shape مطابق مثالهای ذکر شده در شکل 3 استفاده میشود. همانطور که از این شکل برداشت میشود آرایه X به صورت سه سطر و چهار ستون تعریف شده است. همچنین آرایه Y دارای 4 المان و به صورت یک سطر و چهار ستون و آرایه Z به صورت چهار سطر و یک ستون تعریف شده است.
شکل 3) نحوه مشاهده شکل یک آرایه
جهت ایجاد یک آرایه با 5 بعد میتوان از ndmin با استفاده از بردار با مقادیر پیش فرض 0, 2, 6, 5 کمک گرفت و بررسی کرد که آخرین بعد دارای مقدار 4 است یا خیر. همانطور که در شکل 4 مشخص است بعدهای اول تا چهارم برابر ۱ و بعد 5 مقدار چهار تعریف شده است. اعداد صحیح در هر شاخص تعداد عناصری را که بعد مربوطه دارد نشان میدهد. در مثال شکل 4 در شاخص 4 مقدار 5 داریم، بنابراین میتوان گفت که بعد پنجم (4 + 1) دارای 4 عنصر است.
شکل4) ایجاد آرایه با ابعاد دلخواه
تغییر شکل آرایهها
تغییر شکل به معنای تغییر شکل یک آرایه از حیث تغییر ابعاد است. شکل یک آرایه تعداد عناصر در هر بعد است. با تغییر شکل میتوانیم ابعاد را اضافه یا حذف کنیم یا تعداد عناصر را در هر بعد تغییر دهیم.
تغییر شکل از یک بعدی به دوبعدی
برای درک بهتر موضوع، فرض کنید شما یک آرایه یک بعدی با 8 المان یا عنصر دارید. شما میتوانید این آرایه یک بعدی را به یک آرایه دو بعدی به صورت 2 سطر و 4 ستون یا 4 سطر و 2 ستون تبدیل کنید. برای درک بهتر نحوه انجام این کار به مثال ذکر شده در شکل 5 توجه کنید. در این مثال ابتدا یک متغیر x به صورت یک آرایه یک بعد با 8 عنصر دلخواه ایجاد شده است و سپس به کمک دستور reshape این آرایه به آرایههای دو بعدی y و z تبدیل شدهاند. آرایه دو بعدی y دارای 2 سطر و 4 ستون و آرایه z به صورت 4 سطر و 2 ستون تعریف شده است.
شکل5) نحوه تغییر شکل آرایه یک بعدی به دو بعدی
تغییر شکل آرایه یک بعدی به سه بعدی
همانطور که در بالا ذکر شد برای تغییر شکل یک آرایه از دستور reshape استفاده میشود. به طور مثال اگر بخواهیم مثال قبل را به صورت یک آرایه سه بعدی نشان دهیم در این حالت بیرونیترین بعد دارای 2 آرایه خواهد بود که هر کدام شامل 2 آرایه با 2 عنصر است. البته میتوان این آرایه یک بعدی را به دو شکل دیگر نیز نمایش داد بطوریکه در حالت اول دو آرایه وجود داشته باشد که هر آرایه دارای 4 آرایه با یک عنصر باشد یا دو آرایه که هر آرایه دارای یک آرایه با 4 عنصر باشد. برای درک بهتر موضوع به مثال ذکر شده در شکل 6 توجه کنید.
در انتها لازم به ذکر است که شما میتوانید یک آرایه را به هر شکل دلخواه تغییر شکل دهید به شرط آنکه تعداد عناصر مورد نیاز برای ساخت آرایه دوم برابر با عناصر آرایه اولیه باشد. به عبارت دیگر، تا زمانی که عناصر مورد نیاز برای تغییر شکل در هر دو شکل برابر باشند میتوان تغییر شکل آرایه را انجام داد. میتوانیم یک آرایه یک بعدی 8 عنصری را به 4 عنصر در آرایه 2 بعدی 2 ردیفی تغییر شکل دهیم، اما نمیتوانیم آن را به یک آرایه 2 بعدی 3 عنصری و 3 ردیفی تغییر شکل دهیم زیرا در این حالت به 9 عنصر نیاز است.
شکل6) نحوه تغییر شکل آرایه یک بعدی به سه بعدی
دیدگاه ها