İstatistiksel Yazılım Geliştirme Ortamı: R



Benzer belgeler
İstatistiksel Yazılım Geliştirme Ortamı: R

İSTATİSTİKSEL YAZILIM GELİŞTİRME ORTAMI: R

R ile Programlamaya Giriş ve Uygulamalar

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Açık Kaynak Kodlu Yazılım

Öğr. Gör. Serkan AKSU 1

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1

VERİ TABANI UYGULAMALARI

Programlama Dillerinde Kullanılan Veri Tipleri

Yrd. Doç. Dr. Caner ÖZCAN

İnternet Programcılığı

1.PROGRAMLAMAYA GİRİŞ

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER

VERİ TABANI YÖNETİM SİSTEMLERİ I

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers)

Yrd. Doç. Dr. Caner ÖZCAN

JAL IN İNTERNET TEN İNDİRİLMESİ VE KURULMASI

5. PROGRAMLA DİLLERİ. 5.1 Giriş

Java Temel Özellikleri

MATLAB A GİRİŞ. EE-346 Hafta-1 Dr. Ayşe DEMİRHAN

Microsoft SQL Server 2008 Oracle Mysql (Ücretsiz) (Uygulamalarımızda bunu kullanacağız) Access

IV. Ünite A. BAŞLANGIÇ B. TEMEL İŞLEMLER C. FORMÜLLER VE FONKSİYONLAR D. BİÇİMLEME E. İLERİ ÖZELLİKLER ELEKTRONİK TABLOLAMA

GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ

=A1+A2-A3, =A1*A2/A3,

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

Akademik Dünyada Özgür Yazılım. Akademik Dünyada. Onur Tolga Şehitoğlu

Windows Programlama Güz Dönemi

Veritabanı Uygulamaları Tasarımı

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları.

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

BÖLÜM 8 BİLGİSAYAR UYGULAMALARI - 2

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

EĞİTİM ÖĞRETİM MÜNEVVER ÖZTÜRK ORTAOKULU II. DÖNEM BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ DERS NOTLARI

Dinamik Kodlama. [X] [X] Yeni Fonksiyon

Giriş. Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları. *Kaynakça bölümünde verilen kaynaklardan derlenmiştir.

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-3 İşaretçiler (Pointer) (Kısım-2)

VERİ YAPILARI VE PROGRAMLAMA (BTP104)

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

C# nedir,.net Framework nedir?

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

SAB 103 TEMEL BİLGİSAYAR KULLANIMI

TEMEL BİLGİTEKNOLOJİLERİ

Ünite-3 Bilgisayar Yazılımı.

1.1. Yazılım Geliştirme Süreci

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili)

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

VERİ TABANI ve YÖNETİMİ

HSancak Nesne Tabanlı Programlama I Ders Notları

BİLGİSAYAR PROGRAMLAMA MATLAB

Bilgisayar Programlama MATLAB

Yönetim Bilişim Sistemleri (Karma) - 1. yarıyıl Hukukun Temelleri Fundamentals of Law TR

KONU: İşletim Sistemleri I - Ms-Dos İşletim Sistemi SORULAR

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

VERİ TABANI YÖNETİM SİSTEMLERİ

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular

GĐRĐŞ. 1 Nisan 2009 tarihinde BDP programının yeni bir sürümü yayınlanmış ve bu sürümde yapılan değişikliklere

2 Temel Kavramlar (Devam) Veritabanı 1

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

PROGRAMLAMA TEMELLERİ

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

Data Science Boot Camp

Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir.

MAKİNELERE IBM SPSS Statistics 24 nin KURULMASI. IBM SPSS Statistics 24 Yüklemeye Başlamadan Önce Kontrol Edilmesi Gerekenler

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Algoritma ve Akış Diyagramları

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

Veritabanı. Ders 2 VERİTABANI

2. Belgeye Metin Ekleme

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Konular. Hafta 5 Veri Tipleri (Devam) BLG339 PROGRAMLAMA DİLLERİ KAVRAMI

SPSS-Tarihsel Gelişimi

III. Ünite A. BAŞLANGIÇ B. TEMEL İŞLEMLER C. BİÇİMLEME D. SAYFA BİÇİMLEME E. YAZDIRMA F. İLERİ ÖZELLİKLER KELİME İŞLEM PROGRAMI

Ağ Üzerinde MATLAB kurulum rehberi (Sunucu makine)

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido.

Kets DocPlace LOGO Entegrasyonu

1 Temel Kavramlar. Veritabanı 1

SQL (Structured Query Language)

YÖNETİM BİLİŞİM SİSTEMLERİ BÖLÜMÜ YENİ DERS MÜFREDATI (1) FAKÜLTESİ: İŞLETME FAKÜLTESİ / BUSINESS SCHOOL

MONTE CARLO BENZETİMİ

SIMAN KULLANIM KILAVUZU

Yazılım Çeşitleri. Uygulama Yazılımları. İşletim Sistemleri. Donanım

SPSS (Statistical Package for Social Sciences)

Kullanım Kılavuzu Eylül 2018

NESNEYE YÖNELİK PROGRAMLAMA

Bölüm 10: PHP ile Veritabanı Uygulamaları

Üst düzey dillerden biri ile yazılmış olan bir programı, makine diline çeviren programa derleyici denir. C++ da böyle bir derleyicidir.

PROGRAMLAMA DİLLERİ. Programlama Dilleri Programlama Dillerinin Önemi Dilleri Sınıflandırılması Anlambilim BNF Notasyonu Kontrol Deyimleri

Metin İşlemleri, Semboller

BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI Yazılım Türleri

DATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Doç. Dr. Aybars UĞUR

3. sınıf. Bilgisayarla kataloglamanın doğuşu gelişimi ve bugünkü durum ele alınmaktadır. Bu derste

NJ Kontrolcüde SD Kart a Değişken Değeri Kaydetme. NJ Kontrolcülerde SD Kart Fonksiyonları Blokları FilePuts ile Datalog Uygulaması

Linux ve Windows Üzerinde C ve C++ Kullanımı

Transkript:

İstatistiksel Yazılım Geliştirme Ortamı: R A.Fırat Özdemir 1, Engin Yıldıztepe 1, Mustafa Binar 2 1 Dokuz Eylül Üniversitesi, Fen-Edebiyat Fakültesi, İstatistik Bölümü, İzmir 2 Dokuz Eylül Üniversitesi, Fen Bilimleri Enstitüsü, İstatistik Anabilim Dalı, İzmir firat.ozdemir@deu.edu.tr, engin.yildiztepe@deu.edu.tr, mustafa_binar@mynet.com Özet: Günümüzde, yeni geliştirilen yöntem ve algoritmalar için yazılım geliştirme amacıyla kullanılabilecek pek çok yazılım geliştirme ortamı bulunmaktadır. Bu çalışmada, son yıllarda özellikle akademik çalışmalarda yaygın olarak kullanılan R programlama dilinden bahsedilmiştir. Özellikle veri işleme, hesaplama, grafiksel gösterim ve istatistiksel yöntemler için tasarlanan R, 1997 yılından bugüne dünyanın farklı yerlerindeki araştırmacıların katkıları ile geliştirilmiş ve ücretsiz olarak ulaşılabilen bir programlama dilidir. Anahtar Sözcükler: R programlama dili, istatistiksel yazılım geliştirme Statistical Software Development Environment: R Abstract: Today, there are many software development environments for newly developed methods and algorithms. In this study, programming language R which is especially used for academic purposes has been presented. R which has been developed with the contribution of many researchers all over the world since 1997 is integrated software, designed especially for data manipulation, calculation, graphical display and statistical methods. R can be reached free of charge. Keywords: R programming language, statistical software development 1. Giriş R dili ilk olarak Yeni Zelanda daki Aucland Üniversitesi İstatistik Bölümü nden Ross Ihaka ve Robert Gentleman tarafından yazılmıştır. Daha sonra dünyanın çeşitli yerlerindeki araştırmacılardan oluşan bir grup R dilini geliştirmeye devam etmiştir. Bu grup 1997 de R Core Team olarak adlandırılmıştır. R programlama dili bu grupta yer alan araştırmacıların katkıları ile günümüzde kullanılan biçimini almıştır.[2] R dilinin tasarımı önemli ölçüde Becker, Chamber, ve Wilks in geliştirdiği S dili ile Sussman ın geliştirdiği Scheme dillerinden etkilenmiştir. Görünüm özellikleri açısından S diline benzeyen R, uygulama ve anlamsal yönden Scheme diline yakındır. S dili, ilk sürümü 1976 yılında tamamlanan ve o dönemlerde istatistiksel hesaplama yordamlarında tercih edilen Fortran diline alternatif olarak geliştirilen bir istatistiksel programlama dilidir. Gelişen ve değişen S dilinin ticari sürümü 1988 yılında piyasaya sürülen S-PLUS tır. S-PLUS günümüzde TIBCO isimli bir yazılım şirketi tarafından pazarlanmaktadır. S-PLUS yazılımının akademik ve öğretim amaçlı kullanılmasında lisans ücretlerinin pahalı bulunması nedeniyle Yeni Zelanda lı iki istatistikçi Ross Ihaka ve Robert Gentleman, R adını verdikleri programlama dilini geliştirmeye karar vermişlerdir. R kodları 1995 yılında genel kamu lisansıyla (GPL-General Public License) yayınlanmış ve kısa sürede oluşturulan core team tarafından geliştirilen ilk sürümü 29 Şubat 2000 tarihinde yayınlanmıştır.[2] R ve S-PLUS dilleri benzer komut satırına sahiptirler. Bu dillerde yazılan programların birçoğu diğerinde de uygulanabilir. Her ikisi de çok başarılı veri çözümleme sonuçları ortaya 293

İstatistiksel Yazılım Geliştirme Ortamı: R A.Fırat Özdemir, Engin Yıldıztepe, Mustafa Binar koymaktadır.[8] Ancak R açık kaynak kodlu ve dünyanın çeşitli yerlerindeki araştırmacılar tarafından geliştirilen bir programlama dilidir. R istatistiksel yazılım geliştirme ortamı veri manipülasyonu, hesaplama ve grafik gösterim için tasarlanmıştır. Yeni geliştirilen veri çözümleme yöntemleri için kullanılabilecek uygulamalar R ile hızlı bir biçimde yazılabilir. R dilinin söz dizimi kuralları (syntax) C diline benzerlik gösterir [9]. Fonksiyonel bir programlama dili olan R istatistikçiler ve matematikçiler için kod yazmayı kolaylaştıran fonksiyonlara sahiptir. Bu fonksiyonlar bir girdi ifadesi olarak kullanılarak işlem sonuçları tek satırlık komutlarla elde edilebilir. Özellikle bir istatistikçinin veri çözümleme ve grafiksel gösterimlerde kullanabileceği özel fonksiyonlara sahiptir.[1] Yapılan bu çalışma ile R programlama dili tanıtılmış ve özellikle istatistikçiler için önemine değinilmiştir. Çalışmanın sonraki bölümlerinde, R dilinde kullanılan nesneler, nesne olarak fonksiyonlar ve yardımın kullanılmasından bahsedilmiştir. Sonuç bölümünde ise, R dilinin güçlü ve zayıf yönleri belirtilerek diğer istatistiksel yazılım paket programlar ile karşılaştırılmasına yer verilmiştir. 2. R İstatistiksel Programlama Dili Dizi ve özellikle matris hesaplamalarında kullanılabilecek özel operatörler mevcuttur. Veri analizi için kullanılabilecek uyumlu ve bir arada kullanılabilen araçlar içerir. Veri çözümlemede kullanılabilecek grafiksel araçlara sahiptir. S dili gibi basit, etkili bir programlama dilidir. [14] Kullanılacak olan veri dosyalarının R ortamına alınabilmesi için farklı seçenekler vardır. Metin dosyalarından (txt), hesap tablosu dosyalarından (xls, sav), binary ve dbase (dbf) dosyalarından veri almak mümkündür. Gerekli paketleri yükleyerek farklı veritabanlarından da(mysql, Access, Microsoft SQL Server, Postgre SQL, Oracle, IBM DB2) veri almak mümkündür. Ancak R çok büyük boyutlu veritabanı dosyaları ile çalışmak için uygun değildir.[10] Açık kaynak kodlu bir yazılım olan R nin kurulumunun ve kaynak kodunun, Unix, Linux, FreeBSD, Windows ve MacOs gibi işletim sistemlerinde kullanılabilecek farklı sürümleri R-Project web sitesinden temin edilebilir. 2.1. R de Nesne Kavramı ve Nesneler: Birçok programlama dilinde değişkenler bellekte saklanan veriye doğrudan erişimi sağlar. Ancak R, belleğe direkt erişim yerine özel veri yapılarını kullanır. Bu veri yapıları sembol ve değişkenlerin referans olarak kullanıldığı nesnelerdir. R programlama dilindeki temel nesne türleri aşağıda verilmiştir. [9] R-Project web sitesinde yapılan tanıma göre R, istatistiksel hesaplamalar ve grafikler için bir dil ve ortamdır.[6] R, yaygın olarak kullanılan SPSS, SAS, STATA gibi istatistik paket programlardan farklıdır. R bir istatistik paket program değil istatistiksel yazılım geliştirme ortamıdır.[13] R programlama dilinin bazı temel özellikleri aşağıda verilmiştir. Etkin veri işleme ve saklama özelliğine sahiptir. 294 Vektörler: R de altı farklı temel vektör tipi bulunmaktadır; logical, integer, real, complex, string ve raw. Listeler: Listeler de vektördür ancak listedeki elemanlar farklı tiplerde olabilir. İfade: Bir veya daha fazla deyimden oluşan nesnelerdir. Fonksiyonlar NULL: Özel bir nesnedir. Bir nesnenin boş olup olmadığının belirlenmesi veya boş yapılması için kullanılır. Ortamlar: new.env komutu ile oluşturulur.

Sembol-değer çiftlerini içeren bir çerçeve ve bir kapsamdan meydana gelir. R de ayrıca özel bileşimli nesneler denilen faktör ve veri çerçeve nesneleri de vardır. 2.2. R de Nesne Olarak Fonksiyonlar: R de fonksiyonlar da bir nesne türüdür ve diğer nesneler gibi kullanılır. Fonksiyonların üç temel bileşeni vardır. 1. 2. 3. Argüman listesi: Bu listede fonksiyonun argümanları virgülle ayrılarak belirtilir. Gövde Bölümü: Tek bir ifade veya değişkenden oluşabildiği gibi bir dizi ifadenin yer aldığı ve { ile } arasında belirtilen kısımdır. Fonksiyon Ortamı: Fonksiyon oluşturulurken aktif olan ortamdır. Şekil 1. Fonksiyon örneği Yukarıdaki b.median isimli fonksiyon ortancanın standart hatasının bootstrap tahminini bulur. [5] Burada data ve num argümanları, fonksiyon çağırılırken kullanılacak vektör ve bootstrap örneklem sayısıdır. Bu fonksiyonun data1 vektörü ile 20 bootstrap örneklem türeterek ortancanın standart hatasının bootstrap tahminini ve üretilen örneklemleri b1 isimli bir liste nesnesine yazması için aşağıdaki komut kullanılır. b1< b.median(data1,20) da yazılan fonksiyonlardan oluşan paketlerin R web sitesinden temin edilerek yüklenebilmesidir. Install.package() ve update.package() fonksiyonları R komut satırından istenilen paketin indirilmesi ve yüklenmesi için kullanılırlar. 2.3. R Kaynak Kod (SourceCode) Dosyası R dilinde komut satırına girilen söz dizim kuralları aynı zamanda metin dosyalarına da yazılabilir. Bu durumda metin dosyası uzantısı *.R olarak kaydedilir. Bu şekilde kaydedilmiş bir dosya artık R script dosyasıdır. R de bu scriptleri kaynak olarak kullanmak için ana menüde Dosya-file-open script komutu verilir. Başka bir metin editöründe bulunan komutları tekrar komut satırına yazmadan çalıştırmak mümkündür. File menüsünden New Script komutu seçildiğinde açılan R Editor e istenilen komutlar yazılabilir veya kopyalanabilir. Bu editördeki istenilen satırları çalıştırmak için bu satırları işaretledikten sonra Ctrl+R tuş kombinasyonu kullanılır.[2] 2.4. Çöp Toplayıcı (Garbage Collector): Çöp toplayıcılar programlama dillerinde dinamik bellek yönetimini üstlenen sistemlerdir. Programın yazılması ve çalışması sırasında bellek yönetimini gerçekleştirerek bellek sızıntısı (memory leak) ve geçersiz işaretçiler (dangling pointer) gibi olası bellek yönetimi hatalarını önlerler. Böylece hafıza yönetiminin yükü programı yazan kişide değil programlama dilinde olur. Lisp, SmallTalk, Eiffel, Haskell, ML, Scheme, Python, Java,.NET gibi pek çok programlama dili ya da uygulama geliştirme ortamı tüm bellek yönetimini çöp toplayıcılar ile yapar. R programlama dilinde 1.2.0 sürümünden bu yana kuşak yaklaşımının kullanıldığı çöp toplayıcı vardır. R de bellek kullanım durumunu izlemek için gc ve gcinfo fonksiyonları kullanılır.[11,12] R fonksiyonları ayrı paketler halinde düzenlenmişlerdir. Böylece sadece ihtiyaç duyulan fonksiyonların olduğu paket yüklenerek daha az bellek kullanımı ve daha hızlı işlem gücü sağlanabilir. Bu paketlerin bir başka avantajı 295 2.5. Yardımın Kullanılması R istatistiksel yazılım geliştirme ortamında üç farklı kaynaktan yardım alma imkanı vardır. İlki çevrim içi yardım, ikincisi R nin yardım menüsü, üçüncüsü ise R-Project web sitesinde

İstatistiksel Yazılım Geliştirme Ortamı: R A.Fırat Özdemir, Engin Yıldıztepe, Mustafa Binar bulunan kılavuzlardır. [10] ve [14] nolu kaynaklar başlangıç aşamasında olan kullanıcılar için çok yararlıdır.[4] R de yardım kullanmanın en kolay yolu kullanıcı ara yüzündeki araçlar bölümünde yer alan Help menüsünü kullanmaktır.[2] Yukarıda bahsedilenden farklı olarak Help menüsünde, R de bir fonksiyonun nasıl kullanıldığı ve parametrelerinin ne olduğu hakkında yardım sağlayan fonksiyonel yardım mevcuttur. Fonksiyonel yardıma Help menüsünden R functions tıklanarak veya komut satırına help(fonksiyon ismi) yazarak erişilebilir. help komutu iki farklı şekilde kullanılabilir. Bu yöntemler aşağıda gösterilmiştir: >help(mean) veya >?mean Bu iki yöntem de R de fonksiyon ismi bilindiğinde kullanılabilir. Fonksiyon isminin bilinmediği durumlarda kullanılabilecek yardım komutları aşağıda belirtilmiştir:[2,4] 1. help.search(. ): Parantez içinde belirtilenle ilgili yardım konularını listeler. Örneğin >help.search( data input ) komutu data input konusunun geçtiği yardım konularını listeler. 2. find(. ): Parantezde belirtilen kelimenin geçtiği paketin ismini bulur. Örnek: > find( lowess ) [1] package:stats 3. apropos(. ): Parantez içinde belirtilenle ilgili bütün nesnelerin isimleri bir vektör olarak listelenir. Örnek: > apropos( lm ) [1]. C anova.glm. C anova.glm.null. C glm 3. Sonuç Bu çalışmada, son yıllarda akademik çalışmalarda yaygın olarak kullanılan R programlama 296 dilinin tanıtılması hedeflenmiştir. R, ücretsiz olarak temin edilmesi ve dünyanın çeşitli bölgelerindeki araştırmacıların bu dilin gelişimine destek vermesi sonucunda, özellikle veri işleme ve çözümleme alanlarında çalışan kullanıcıların dikkatini çekmiştir. Bu dilin güçlü yönleri; ücretsiz temin edilebilmesi, nesne yönelimli bir programlama dili olması, farklı amaçlar için geliştirilmiş paketler eklenerek fonksiyonelliğinin arttırılabilmesi, 2-D, 3-D ve daha fazla boyutlu gelişmiş grafik araçlarına sahip olması, olarak sıralanabilir. Aşağıdaki özellikleri ise zayıf yönleri olarak belirtilebilir: Öğrenmesi zor bir programlama dilidir. Gelişmiş veri işleme özelliklerine sahip olmasına rağmen bunların kullanılabilmesi özellikle dizi ve matris işlemlerine hâkim olmayı gerektirir. Çok büyük veri dosyaları ile çalışmak için uygun değildir. Birkaç yüz megabyte dan daha büyük veri dosyaları açılmak istendiğinde yetersiz bellek sorunu meydana gelebilir.[10] Ticari bir ürün olmadığı için kullanımında karşılaşılan sorunların iletileceği müşteri destek birimi yoktur. Wegman ve Solka ya göre istatistik paket programlarının Microsoft u olarak nitelendirilen SAS, daha çok kurumsal ölçekte kullanılan bir paket programdır.[15] SAS, özellikle veri madenciliği ve bir çok alanda kullanılabilen uygulama araçlarına sahip çok kapsamlı bir paket programdır ve bu özellikleri onu, bu alanın en büyük ve en pahalı paket programlarından biri yapmaktadır. Statistical Packages for Social Science (SPSS) ise dünya ölçeğinde rekabet gücüne sahip bir başka istatistik paket programıdır ve özellikle sosyal ve eğitim bilimleri alanında kullanıcı bulmaktadır.

Yaygın olarak kullanılan SAS, SPSS gibi istatistik paket programları ile R arasındaki en önemli fark R nin bir paket program değil istatistiksel hesaplamalar ve grafikler için kullanılabilecek bir istatistiksel yazılım geliştirme ortamı ve programlama dili olmasıdır.[13] Windows ve Unix platformlarında kullanılabilen S Plus ile Windows, Unix, MacOS platformlarında kullanılabilen R, kullanıcı ara yüzü dışında pek çok açıdan birbirine benzemekte olup bu dillerden birinde yazılan bir kod genellikle diğerinde de çalıştırılabilir. Ancak söz dizimi kurallarındaki bazı ufak gözüken farklar, komutların işletilmesi sonucu farklı sonuçlar çıkmasına neden olabilecek kadar önemlidir.[7] Bu iki dili birbirinden ayıran en önemli özellik Ihaka ve Gentleman tarafından geliştirilmeye başlanan ve R Core Team tarafından geliştirilmesi devam eden R nin ücretsiz bir dil olmasıdır. Bu çalışmada, yeni geliştirilen istatistiksel yöntemler için yazılan paketlerin kullanıcılar tarafından kolaylıkla yüklenebildiği ve istatistikte önemli bir çalışma alanı olan dayanıklı (robust) istatistiksel yöntemleri kullanmak için gereken fonksiyonlara sahip olması nedeniyle özellikle bu alanda çalışan araştırmacılar tarafından tercih edildiği gözlenen açık kaynak kodlu ve ücretsiz bir programlama dili olan R, tarihçesi, yardım seçenekleri, nesne kavramı, fonksiyonları ve diğer özellikleri ile incelenmiştir. R, akademik çalışmaların yanı sıra istatistik ve matematik eğitiminde de lisanslama problemi olmadan ihtiyaçları karşılayabilecek güçlü bir alternatif oluşturmaktadır. 4. Kaynaklar: [1] Braun W.J.,Murdoch D.J., A first course in statistical programming, Cambridge University Press, England, 1:13-175(2007) [2] Crawley M. J., The R Book, Wiley serisi, England, 9-97(2007) [3] Dalgaard P., Introductory Statistics with R,Springer Series, Denmark, 9-11(2008) [4] Everitt B. S., Hothorn Torsten, A Handbook of Statistical Analyses Using R, London 1-3, 4-5(2005) [5] http://www.ats.ucla.edu/stat/r/library/bo otstrap.htm, R Library: Introduction to Bootstrapping, Ucla Academik Technology Services [6] http://www.r-project.org/, What is R?,(2009) [7] Ihaka, R., & Gentleman, R., R: A Language for Data Analysis and Graphics, Journal of Computational and Graphical Statistics, 5(3), 299-314 (1996) [8] Lumley T., R Fundamentals and Programming Techniques, Birmingham 3-4(2006) [9] R Development Core Team, R Language Definition, 2-8, 26(2008) [10] R Development Core Team, R Data Import/Export, 2-4(2008) [11] R Development Core Team, R Internals, 11-12(2008) [12] R Development Core Team, R: A Language and Environment for Statistical Computing,182-183(2009) [13] Statistical Computing Group, Very Basics of R(Windows), Research Data Services, University of Pennsylvania 2-3(2008) [14] Venables W. N., Smith D. M., the R Development Core Team, An Introduction to R, 2-6(2008) [15] Wegman E. J., Solka J. L., Statistical Software for Today and Tomorrow, in Encyclopedia of Statistics, John Wiley, (2005) 297