آموزش انواع داده ها در متلب (با مثال و نکات کاربردی)

رتبه: 0 ار 0 رای sssss
دیتا در متلب

MATLAB برای تعریف یک متغییر الزام خاصی ندارد. هرگاه MATLAB با یک نام متغیر جدید مواجه می شود، متغیر را ایجاد می کند و فضای حافظه مناسب را اختصاص می دهد.

اگر متغیر در حال حاضر وجود داشته باشد، MATLAB محتوی قبلی را با محتوای جدید جایگزین می کند و در صورت لزوم فضای ذخیره سازی جدید اختصاص می دهد.

مثلا:

Total = 42

عبارت بالا یک ماتریس ۱ در ۱ با نام ‘Total’ ایجاد می کند و مقدار ۴۲ را در آن ذخیره می کند.

انواع داده موجود در MATLAB

MATLAB پانزده نوع داده را فراهم می کند. هر نوع ، داده هایی را در قالب یک ماتریس یا آرایه ذخیره می کند. اندازه این ماتریس یا آرایه حداقل صفر بایت است و می تواند به یک ماتریس یا آرایه ای از هر اندازه بزرگ تبدیل شود. جدول زیر انواع متداول مورد استفاده در MATLAB را نشان می دهد –

ردیف نوع داده و شرح
۱ int8

عدد صحیح هشت بیتی علامت دار

۲ uint8

عدد صحیح هشت بیتی بدون علامت

۳ int16

عدد صحیح شانزده بیتی علامت دار

۴ uint16

عدد صحیح شانزده بیتی بدون علامت

۵ int32

عدد صحیح سی و دو بیتی علامت دار

۶ uint32

عدد صحیح سی و دو بیتی بدون علامت

۷ int64

عدد صحیح شصت و چهار بیتی علامت دار

۸ uint64

عدد صحیح شصت و چهار بیتی بدون علامت

۹ single

عدد اعشاری است که تا هفت رقم بعداز ممیز دقیق است

۱۰ double

عدد اعشاری با دقت دو برابر

۱۱ logical

نوع داده منطقی با مقدار صفر یا یک

۱۲ char

نوع داده برای رشته حروف

۱۳ cell array

نوع داده برای ذخیره انیکس های خانه آرایه

۱۴ structure

تعریف نوع داده دلخواه با مشخصات ساختاری دلخواه

۱۵ function handle

اشاره گر به یک تابع

۱۶ user classes

تعریف یک کلاس از اشیا

۱۷ java classes

تعریف یک کلاس از اشیا به فرکت جاوا

مثال

یک فایل اسکریپت با کد زیر ایجاد کنید –

str = ‘Hello World!’

n = 2345

d = double(n)

un = uint32(789.50)

rn = 5678.92347

c = int32(rn)

حتما بخوانید: آموزش عملیات و نمایه سازی منطقی در نرم افزار متلب به زبان ساده

هنگامی که کد بالا کامپایل شده و اجرا می شود، نتیجه ی زیر را تولید می کند −

str = Hello World!

n = 2345

d = 2345

un = 790

rn = 5678.9

c = 5679

تبدیل نوع داده

MATLAB توابع مختلف برای تبدیل از یک نوع داده به دیگری فراهم می کند. جدول زیر توابع تبدیل نوع داده را نشان می دهد:

تابع هدف
char تبدیل به کاراکتر رشته ای
int2str تبدیل نوع اینتیجر(عدد صحیح) به استرینگ(رشته حروف)
mat2str تبدیل ماتریس به رشته حرفی
num2str تبدیل عدد به رشته حروف
str2double تبدیل حروف به اعدد اعشاری دقت مضاعف
str2num تبدیل رشته حروف به عدد
native2unicode تبدیل بایت های عددی به کارکتر های یونیکد
unicode2native تبدیل کاراکترهای یونی کد به بایت های عددی
base2dec مبنای n را به مبنای ده تبدیل می کند
bin2dec تبدیل اعداد باینری به دهدهی
dec2base تبدیل اعداد دسیمال به مبنای دلخواه n
dec2bin تبدیل اعداد دهدهی به باینری
dec2hex تبدیل مبنای ده به مبنای شانزده
hex2dec تبدیل مبنای شانزده به مبنای ده
hex2num تبدیل مبنای شانزده به عدد اعشاری دقت مضاعف
num2hex تبدیل عدد اعشاری به مبنای شانزده
cell2mat تبدیل آرایه سلولی(ایندکس آرایه) به آرایه عددی
cell2struct تبدیل آرایه سلولی به ساختار آرایه
cellstr ایجاد یک رشته از آرایه کاراکترها
mat2cell تبدیل یک آرایه به یک سلول آرایه با سایز متفاوت
num2cell تبدیل یک آرایه به یک سلول آرایه با سایز ثابت
struct2cell تبدیل یک ساختار به یک سلول آرایه

تعیین انواع داده ها

MATLAB توابع مختلفی را برای تعریف نوع داده متغیرها فراهم می کند:

تابع هدف
is تعیین وضعیت
isa تعیین اینکه آیا ورودی یک شی از کلاس مشخصی است
iscell تعیین اینکه ورودی سلولی از یک آرایه است
iscellstr Determine whether input is cell array of strings
ischar تعیین اینکه آیا کاراکتر است
isfield تعیین اینکه آیا یک فیلد از یک ساختار است
isfloat تعیین اینکه آیا ورودر یک داده با ممیز شناور است
ishghandle شی ورودی یک شی گرافیکی است
isinteger تعیین اینکه ورودی یک عدد صحیح است
isjava تعیین اینکه وروی یک شی جاوا است
islogical تعینن اینکه ورودی یک داده منطقی است
isnumeric تعیین اینکه ورودی یک داده عددی (اعداد طبیعی) است
isobject تعیین اینکه ورودی یک شی متلب است
isreal چک کردن اینکه ورودی یک عدد حقیقی است
isscalar تعیین اینکه ورودی اسکالر است
isstr تعیین اینکه آیا ورودی آرایه حروف است
isstruct تعیین اینکه ورودی آرایه ساختاری است
isvector تعیین اینکه ورودی بردار است
class کلاس شی را تعیین می کند
validateattributes اعتبار آرایه را بررسی می کند
whos لیست متغیرها موجود در پروژه ، با نوع و اندازه

مثال

یک فایل اسکریپت با کد زیر ایجاد کنید −

x = 3

isinteger(x)

isfloat(x)

isvector(x)

isscalar(x)

isnumeric(x)

x = 23.54

چرب زبان

پایگاه داده SQL Server رو قورت بده! بدون کلاس، سرعت 2 برابر، ماندگاری 3 برابر، پولسازی بلافاصله ... دانلود:

پک کامل SQL Server

پک مبانی برنامه نویسی (اختیاری)

isinteger(x)

isfloat(x)

isvector(x)

isscalar(x)

isnumeric(x)

x = [1 2 3]

isinteger(x)

isfloat(x)

isvector(x)

isscalar(x)

x = ‘Hello’

isinteger(x)

isfloat(x)

isvector(x)

isscalar(x)

isnumeric(x)

حتما بخوانید: کجا و به چه دلیل باید از نرم افزار متلب استفاده کنیم یا نکنیم؟

وقتی فایل را اجرا میکنید، نتیجه زیر را تولید میکند:

x = 3

ans = 0

ans = 1

ans = 1

ans = 1

ans = 1

x = 23.540

ans = 0

ans = 1

ans = 1

ans = 1

ans = 1

x =

۱ ۲ ۳

ans = 0

ans = 1

ans = 1

ans = 0

x = Hello

ans = 0

ans = 0

ans = 1

ans = 0

ans = 0

کار با داده ها: نکات کاربردی

برای اینکه کار با داده‌ها در متلب برای شما ساده و ساختاریافته شود، باید چند مفهوم و ترفند کلیدی را بشناسید.

۱. همه‌چیز در متلب «ماتریس» است

مهم‌ترین قانونی که باید در متلب به خاطر بسپارید این است: متلب هیچ تفاوتی بین یک عدد تکی (اسکالر)، یک لیست از اعداد (بردار) و یک جدول دو بعدی (ماتریس) قائل نمی‌شود.

وقتی شما می‌نویسید x = 5، متلب در پشت صحنه یک ماتریس $1 \times 1$ می‌سازد که فقط یک درایه (عدد ۵) داخل آن است. این دیدگاه به شما اجازه می‌دهد عملیات ریاضی را به جای تک‌تک اعداد، روی کل یک مجموعه داده به صورت هم‌زمان انجام دهید.

۲. آشنایی با انواع داده‌های پرکاربرد (Data Types)

متلب برای مدیریت انواع مختلف اطلاعات، ساختارهای متفاوتی دارد. برای مرتب‌سازی داده‌های خود باید بدانید از کدام ساختار استفاده کنید:

نوع داده کاربرد به زبان ساده مثال ظاهری در کد
آرایه عددی (Numeric Array) برای ذخیره اعداد (صحیح یا اعشاری). پایه تمام محاسبات متلب. [1, 2, 3.5, 4]
رشته متنی (String/Char) برای ذخیره کلمات و متن‌ها. (توصیه می‌شود از علامت نقل قول دوتایی "" برای استرینگ استفاده کنید). "Hello World"
آرایه سلولی (Cell Array) شبیه یک کمد با کشوهای مختلف است. در هر کشو می‌توانید هر چیزی بگذارید (یک کشو عدد، یک کشو متن، یک کشو ماتریس). با آکولاد {} تعریف می‌شود. {25, 'Tehran', [1 2 3]}
جدول (Table) بهترین ابزار برای داده‌های واقعی (مثل فایل اکسل). ستون‌ها نام دارند و می‌توانند شامل داده‌های مختلف (سن، نام، حقوق) باشند. readtable('data.csv')

۳. ترفندهای حیاتی برای دستکاری داده‌ها

برای اینکه کدهایتان در متلب سریع‌تر اجرا شود و خطای کمتری داشته باشد، این سه اصل را رعایت کنید:

  • شماره‌گذاری از ۱ شروع می‌شود (۱-Based Indexing): برخلاف زبان‌هایی مثل پایتون یا C که شمارش خانه‌ها از صفر شروع می‌شود، اولین خانه هر آرایه یا ماتریس در متلب، خانه شماره ۱ است.

  • برداری‌سازی (Vectorization) به جای حلقه‌ها: متلب برای کار با حلقه‌های تکرار (مثل for) ساخته نشده و در اجرای آن‌ها بسیار کند است. اگر می‌خواهید تمام اعداد یک لیست را ضرب در ۲ کنید، نیازی نیست تک‌تک آن‌ها را در یک حلقه ضرب کنید. فقط بنویسید A * 2. متلب خودش این کار را روی کل داده‌ها اعمال می‌کند.

  • استفاده از عملگر نقطه (.): اگر می‌خواهید دو ماتریس را «عنصر به عنصر» در هم ضرب یا تقسیم کنید (نه ضرب ماتریسی ریاضی)، حتماً باید قبل از علامت ضرب یا توان، یک نقطه بگذارید. مثلاً A .* B یا A .^ 2. فراموش کردن این نقطه، رایج‌ترین خطای مبتدیان در متلب است.

۴. وارد کردن و ذخیره داده‌ها

  • وارد کردن از اکسل/CSV: بهترین دستور برای این کار readtable('filename.xlsx') است. این دستور داده‌ها را با همان ساختار مرتب و با نام ستون‌ها وارد متلب می‌کند. (دستور قدیمی xlsread دیگر توصیه نمی‌شود).

  • ذخیره محیط کار: اگر محاسبات سنگینی انجام داده‌اید، می‌توانید تمام متغیرهای ساخته شده در حافظه (Workspace) را با دستور save('mydata.mat') در یک فایل فشرده ذخیره کنید تا فردا بدون نیاز به اجرای مجدد کدها، آن‌ها را با دستور load('mydata.mat') برگردانید.

profile name
سریع آسان

بخندید کتاب بخونید و خوب باشید تا جامعه مون به آرامش برسه. لطفا ! هر سوالی دارید در بخش نظرات مطرح کنید. ما یا سایر هموطنان عزیز پاسخ خواهیم داد. برای کمک به سایت ما و گسترش آموزش در بین هموطنان، در سایتها، وبلاگ ها و شبکه های اجتماعی لینک سایت ما را درج کنید.

مطالب پیشنهادی برای شما

محصولات مرتبط

مشاهده همه

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

1 2 3 4 5

0 نظر درباره «آموزش انواع داده ها در متلب (با مثال و نکات کاربردی)»

    هنوز نظری برای این بخش ثبت نشده است
مشاهده همه نظرات
سبد خرید
سبد خرید شما خالی است
× جهت نصب روی دکمه زیر در گوشی کلیک نمائید
آی او اس
سپس در مرحله بعد برروی دکمه "Add To Home Screen" کلیک نمائید