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

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

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

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

R-2.15.2-win.exe - 47MB

نمونه کد ساده پیاده سازی K-Means در R:

برای اجرا یک اسکریپت جدید باز کرده، کدها را در آن کپی نموده و پس از انتخاب همه دستورات توسط دکمه Run Line or selection اجرا نمائید.

z1<-matrix(rexp(200,4),100)
z2<-matrix(rexp(200,2),100)
z<-rbind(z1,z2)
(colnames(z)<-c("x","y"))
(k<-kmeans(z,6))
plot(z,col=k$cluster)
points(k$centers,col=1,pch=3,cex=2)