ویژگی تصویر

دستورات شرطی در زبان برنامه نویسی R

  /  زبان برنامه نویسی R   /  دستورات شرطی در زبان R
بنر تبلیغاتی الف
زبان برنامه نویسی R

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

در زبان R، همانند بسیاری از زبان‌های برنامه‌نویسی، دستورات شرطی به ما کمک می‌کنند تا کدهایی پویا بنویسیم. این قابلیت زمانی اهمیت پیدا می‌کند که بخواهیم منطق‌های پیچیده یا داده‌هایی که به شرایط خاصی وابسته‌اند را مدیریت کنیم. در این مقاله، با دستورات شرطی در زبان R آشنا شده و نحوه استفاده از آن‌ها را با مثال‌های کاربردی یاد خواهیم گرفت.

1. ساختار اصلی دستور شرطی if

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

if (شرط) {
    کدهای اجرایی
}

مثال: فرض کنید می‌خواهیم بررسی کنیم که آیا یک عدد مثبت است یا خیر:

تماشا در حالت تمام صفحه

توضیح: در این مثال، مقدار x برابر با ۵ است. شرط داخل پرانتز بررسی می‌کند که آیا x بزرگ‌تر از صفر است. چون این شرط صحیح است، عبارت “عدد مثبت است” چاپ می‌شود.

2. دستور شرطی if-else

زمانی که بخواهیم برای شرایط False نیز عملیاتی انجام دهیم، از ترکیب if-else استفاده می‌کنیم. این ترکیب به ما امکان می‌دهد دو مسیر منطقی مختلف را تعریف کنیم.

ساختار:

if (شرط) {
    کدهای اجرایی در صورت True بودن شرط
} else {
    کدهای اجرایی در صورت False بودن شرط
}

مثال: بررسی مثبت یا منفی بودن یک عدد:

تماشا در حالت تمام صفحه

توضیح: اگر مقدار x بیشتر از صفر باشد، عبارت “عدد مثبت است” چاپ می‌شود. در غیر این صورت، عبارت “عدد منفی است” نمایش داده می‌شود.

3. استفاده از چندین شرط با if-else if-else

برای بررسی چندین حالت مختلف، می‌توان از ترکیب if-else if-else استفاده کرد. این ترکیب زمانی مفید است که بیش از دو حالت مختلف وجود داشته باشد.

ساختار:

if (شرط 1) {
    کدهای اجرایی شرط 1
} else if (شرط 2) {
    کدهای اجرایی شرط 2
} else {
    کدهای اجرایی در صورت False بودن تمام شرایط
}

مثال: طبقه‌بندی اعداد به مثبت، منفی یا صفر:

تماشا در حالت تمام صفحه

توضیح: در این مثال، شرط‌های مختلف بررسی شده و بسته به مقدار x، یکی از پیام‌ها چاپ می‌شود.

4. دستورات شرطی تو در تو (Nested If)

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

مثال: بررسی محدوده یک عدد:

تماشا در حالت تمام صفحه

توضیح: در این مثال، ابتدا بررسی می‌شود که عدد مثبت است یا خیر. سپس، اگر مثبت باشد، بررسی می‌شود که آیا کمتر از ۱۰ است یا خیر.

5. استفاده از تابع ifelse

تابع ifelse در R، نسخه‌ای جمع‌وجور برای شرایط ساده است. این تابع امکان بررسی یک شرط و بازگرداندن نتایج مختلف را در قالب یک خط فراهم می‌کند.

ساختار:

ifelse(شرط, مقدار در صورت True, مقدار در صورت False)

مثال: برچسب‌گذاری یک عدد به عنوان مثبت یا منفی:

تماشا در حالت تمام صفحه

توضیح: در این مثال، تابع ifelse بررسی می‌کند که آیا x مثبت است یا خیر و بر اساس نتیجه، مقدار “مثبت” یا “منفی” را بازمی‌گرداند.

6. ترکیب دستورات شرطی با بردارها

یکی از ویژگی‌های زبان R این است که می‌توان دستورات شرطی را با بردارها ترکیب کرد. این قابلیت زمانی مفید است که بخواهیم چندین شرط را به صورت همزمان بررسی کنیم.

مثال: تبدیل مقادیر یک بردار به مثبت یا صفر:

تماشا در حالت تمام صفحه

توضیح: در این مثال، مقادیر مثبت حفظ شده و مقادیر منفی به صفر تبدیل می‌شوند.

دستورات شرطی ابزار قدرتمندی برای کنترل جریان اجرای برنامه در زبان R هستند. با استفاده از این دستورات، می‌توان منطق‌های پیچیده را به‌راحتی پیاده‌سازی کرد. چه برای کار با داده‌ها و چه برای انجام تحلیل‌های آماری، استفاده درست از دستورات شرطی می‌تواند کارایی و دقت کدها را بهبود بخشد. با تمرین و استفاده از این دستورات در پروژه‌های مختلف، مهارت بیشتری در برنامه‌نویسی به دست خواهید آورد.

منابع

  • R Documentation
  • کتاب “R for Data Science” نوشته Hadley Wickham و Garrett Grolemund

آیا این مطلب برای شما مفید بود ؟

خیر
بله
بنر تبلیغاتی ج