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

زبان اس بجز R، توسط شرکت Insightful، در نرم‌افزار تجاری اس‌پلاس نیز پیاده‌سازی شده است. اگرچه دستورات اس‌پلاس و R بسیار شبیه است لیکن این دو نرم‌افزار دارای هسته‌های متمایزی می‌باشند.

، حاوی محدودهٔ گسترده‌ای از تکنیک‌های آماری (از جمله: مدل‌سازی خطی و غیرخطی، آزمون‌های کلاسیک آماری، تحلیل سری‌های زمانی، رده‌بندی، خوشه‌بندی و غیره) و قابلیت‌های گرافیکی است. در محیط R، کدهای سی، سی++ و فورترن قابلیت اتصال و فراخوانی هنگام اجرای برنامه را دارند و کاربران خبره می‌توانند توسط کدهای سی، مستقیماً اشیا R را تغییر دهند.

نمونه‌ای از نمودارهای تولید شده توسط آر.

گرچه نرم‌افزار R اغلب به منظور انجام محاسبات آماری به کار می‌رود، این نرم‌افزار قابل به کارگیری در محاسبات ماتریسی است و در این زمینه، همپای نرم‌افزارهایی چون اُکتاو و نسخهٔ تجاری آن متلب (MATLAB) است.[۲]

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

امکان توسعهٔ قابلیت‌های R، با افزودن بسته‌های ایجاد شده توسط کاربران آن، یکی از ویژگی‌های مهم این نرم‌افزار است. این بسته‌ها توسط R، LaTeX، جاوا، سی++ و فورترن نوشته شده‌اند. مجموعه‌ای از بسته‌های اصلی R، هنگام نصب همراه برنامه وجود دارند و در مجموع ۴۴۴۲ بسته (تا آوریل ۲۰۱۳) در شبکهٔ بایگانی فراگیر آر (CRAN) وجود دارد.[۳] این بسته‌ها طیف وسیعی از قابلیت‌ها را در زمینه‌های مختلف تحلیل داده‌ها به R می‌دهند.

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

  • JGR: ویرایشگر چندسکویی بر پایهٔ جاوا.
  • R Commander: رابط گرافیکی بر پایهٔ tcltk، دارای قابلیت استفاده از منوها به جای نوشتن دستورات (مناسب برای کاربران مبتدی و آشنا با اس‌پلاس)
  • آراکسل RExcel: امکان استفاده از R و R Commander در برنامهٔ ماکروسافت اکسل
  • rggobi: رابط برنامهٔ GGobi برای به تصویر کشیدن داده‌های ماتریسی

مثال

کد کوتاهی که با زبان آر نوشته شده برای مجموعه مندلبرو که ۲۰ تکرار از z = z² + c را با ضابت‌های پیچیده متفاوت نمایش می‌دهد.

 

library(caTools) # external package providing write.gif function
jet.colors “yellow”, “#FF7F00”, “red”, “#7F0000”))
m C imag=rep(seq(-1.2,1.2, length.out=m), m))
C Z X for (k in 1:20) { # loop with 20 iterations
Z X[,,k] }
write.gif(X, “Mandelbrot.gif”, col=jet.colors, delay=100)

 

کوچک اما توانا؛ این توصیف شاید موجزترین تعبیری باشد که می توان راجع به نرم افزار R بیان نمود.نرم افزار R محیط بسیار مناسبی برای محاسبات آماری و ترسیم نمودارها است. نرم افزار آماری R در سال های اخیر در دنیا شهرت بسزایی یافته و نظر کاربران زیادی را به خود جلب نموده است. شاید بتوان عوامل زیر را به عنوان علت شهرت آن احصاء نمود:

* این نرم افزار رایگان است و اغلب افراد دانشگاهی حامیان آن هستند.

* روی اکثر سکوها قابل نصب است و کار می کند.

* تعداد زیادی پکیج روی آن نصب می شود که زمینه های مختلف آماری را در بر می گیرد و از این حیث قدرت شگرفی را به این نرم افزار به ظاهر کوچک می بخشد.

فایل آموزش استفاده از نرم افزار R به صورت pdf در ادامه ی این مطلب برای دانلود قرار داده شده است.

R Commender یک نرم افزار آماری رایگان و از رابط های گرافیکی آماری (GUI=graphical user interface) برای R است.  و در واقع به محیط برنامه نویسی و دستوری R فضایی گرافیکی می بخشد. پروفسور John Fox   آن را  برای  آموزش درسهای آماری و جلوگیری از پیچیدگی یادگیری نرم افزار R تدارک دید. که شامل منو هایی است که می توانند آنالیز های آماری را در داده ها انجام دهند. 

نکاتی در باره ی نصب  R commander  :

 

بسته ی Rcmdr از بسته های استاندارد R است که  به صورت عادی می تواند لود و نصب گردد. با این حال نحوه ی صحیح نصب آن را در R شرح خواهیم داد:

یک نکته ی کلی که باید همواره مد نظر قرار داد این است که بسته ی Rcmdr ( علاوه بربسته هایی مثل tcltk و MASS که جزیی از تقسیم بندی های استاندارد R هستند) از بسته های کمکی دیگری نیز استفاده می کند، و برای کار کردن درست این بسته نیاز است تا تمام این بسته ها حاضر باشند:

Abline،  aplpack، car، colorspace، effects، Hmisc، leaps، lmtest، relimp، rgl و (در ویندوز) RODBC.

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

پس از نصب بسته، برای اجرای بسته Rcmdr، کافی است دستور library(Rcmdr)  را وارد کرد.

 

 

نکاتی برای سیستم عاملWindows :

راحت ترین راه برای نصب بسته ی  Rcmdr در صورتی که به اینترنت وصل  باشید، از طریق منوی  packag و در آن  Install packages است همچنین می توان از دستور زیر

 

install.packages(“Rcmdr”)

 

وقتی که  برای اولین بار بسته ی  Rcmdr را با دستور library(Rcmdr) فراخوانی می کنید، به شما پیشنهاد می شود که تمام بسته های وابسته به آن را که در حال حاضر ندارید دانلود کنید؛ به نرم افزار اجازه بدهید تا این کار بکند.

چنانچه R را در Program files تحت ویندوز ویستا یا ۷ نصب کردید؛ باید R را با قابلیت های administrator اجرا کنید تا بسته ها را نصب کند.

چنانچه با دستور library(Rcmdr) با پیغام خطایی ناشی از ناشناخته بودن Rcmdr مواجه شدید؛ برای رفع این مشکل این برنامه را بسته و دوباره از اول آن را باز کنید اما این بار ابتدا روی آیکن R دکمه راست ماوس کلیک کنید و گزینه ی Run as administraror  را انتخاب کنید.

توصیه می شود که در اینجا R را در پوشه ی جداگانه ای نصب کنید، مثل  C: \R \، تا درگیر این مورد نشوید.

در ویندوز، بسته ی Rcmdr با تک صفحه (SDI)  به بهترین نحو عمل خواهد کرد. تحت پیش فرض که  چندین صفحه وجود دارد، Tk کادر محاوره ها ممکن است که بالای پنجره ی R باقی نماند. این یک موضوع کلی در این زمینه هاست مثل R Commander که اصول آن در بسته ی tcltk موجود است.

برای غیر فعال کردن SDI از آیکن R خود بر روی دسک تاپ خود یک کپی بگیرید ( بر روی آیکن راست کلیک کنید و آن را روی محل دیگری بر روی دسک تاپ خود بکشید و از منوی context گزینه ی copy here را انتخاب کنید.) حال بر روی آیکن جدید راست کلیک کرده و properties را انتخاب کنید. در قسمت target در تب shortcut به آدرس نوشته شده – -sdi را اضافه کنید( قبل آن فاصله بگذارید)

 

 

 

مثل:

 

 

 

 “C:\Program Files\R\rw2010\bin\Rgui.exe” –sdi

 

 

 

اگر دوست دارید اسم این فاییل را می توانید در تب general کادر محاوره properties عوض کنید. سپس ok کنید.

همچنین می توانید برای استفاده از SDI، R را نصب کنید یا  می توانید در زیر پوشه ی etc فایل Rconsole را ویرایش کنید.

اگر بخواهید R Commander  وقتی که R را باز می کنید اجرا شود  می توانید دستور زیر را در etc  در Rprofile.site وارد کنید:

 

 

 

local({

old

options(defaultPackages = c(old, “Rcmdr”))

})