BAB 2 LANDASAN TEORI 2.1 Metode Sampling Metode penarikan contoh yang paling sederhana adalah simple random sampling. Simple random sampling adalah suatu prosedur penarikan contoh n dari populasi dengan ukuran N. Populasi P adalah sebuah kumpulan dari semua kemungkinan orang-orang, benda-benda dan ukuran lain dari objek yang menjadi perhatian. Contoh n adalah suatu bagian dari populasi tertentu yang menjadi perhatian. Tujuan utama mengadakan survei adalah membuat kesimpulan tentang sifat-sifat populasi berdasarkan informasi yang terdapat didalam contoh (Gaspers, 1990). Jika ragam populasi σ2 meningkat maka jumlah informasi yang terkandung akan berkurang. Demikian juga jika jumlah contoh n meningkat maka jumlah informasi yang terkandung akan bertambah. 2.1.1 Prosedur penarikan contoh acak sederhana (simple random sampling) Didalam melakukan penarikan contoh acak sederahana ada syarat yang harus dipenuhi, diantaranya adalah : 1. Populasi harus diketahui terlebih dahulu dengan jelas serta dapat diidentifikasi dengan tepat sehingga kerangka penarikan contoh (sampling frame) dapat dibentuk. 2. Keragaman populasi harus bersifat homogen.
6
2.2 Matriks data Matriks adalah suatu bilangan atau fungsi yang diletakan secara mendatar dan ditulis antara dua tanda kurung. Matriks data yang akan digunakan didalam penggunaan metode biplot adalah matriks data dari nilai rata-rata yang diberikan oleh responden. Bentuk umum :
Amxn
⎡ a11 ⎢a = ⎢ 21 ⎢ M ⎢ ⎣ am1
a12 a22 M am 2
a1n ⎤ L a2 n ⎥⎥ O M ⎥ ⎥ L amxn ⎦ L
2.2.1 Nilai karakteristik dan vektor karakteristik Nilai karakteristik dan vektor karakteristik atau biasa disebut dengan eigenvalue dan eigenvector bisa didefinisikan : Amxn berupa matriks bujur sangkar x = vektor (≠ 0) A.x = λ .x
Dimana λ disebut sebagai nilai karakteristik dari matriks A dan x disebut sebagai vektor karakteristik dari matriks A. A.x = λ .x A.x = λ .I .x , I adalah vektor satuan.
λ .I .x = A.x λ .I .x − A.x = 0
7
(λ.I − A).x = 0
| λ I − A |= 0 disebut dengan persamaan karakteristik 2.2.2 Penguraian Nilai Singular
Didalam metode biplot terdapat penguraian nilai singular matriks atau biasa dikenal juga dengan SVD (singular value decompotision), selanjutnya akan disebut dengan SVD. SVD bertujuan menguraikan suatu matriks X berukuran m x n yang merupakan matriks data peubah ganda yang terkoreksi terhadap rataannya dimana m adalah banyaknya objek pengamatan dan n adalah banyaknya peubah, menjadi 3 buah matriks (Johnson, p102). Secara matematis dapat ditulis dengan persamaan : nXp = nUr rLr rAp
Dimana : U dan A masing-masing berukuran n x r dan p x r. Matriks U dihitung melalui persamaan
1
λi
Xai , dengan λi adalah akar ciri ke-i dari
matriks X’X dan ai adalah lajur ke-i matriks A. UU = AA = Ir, Ir adalah matriks identitas. A = [a1, a2, … a3] ⎧⎪ 1 ⎫⎪ 1 1 U =⎨ Xa1 , Xa2 ,L , Xar ⎬ λ2 λr ⎩⎪ λ1 ⎭⎪
8
L adalah matriks diagonal berukuran r x r dengan unsur-unsur diagonalnya adalah akar kuadrat dari akar ciri X’X atau XX’ sehingga
λ1 ≥ λ2 ≥ ... ≥ λr . Unsur-unsur diagonal matriks L ini disebut nilai singular dari matriks X.
⎡ λ1 L ⎢ λ2 ⎢0 L=⎢ M ⎢M ⎢ 0 ⎣0
⎤ ⎥ L 0 ⎥ ⎥ O M ⎥ L λr ⎥⎦ L 0
Matriks A adalah vektor ciri dari matriks X’X atau XX’ 2.3 Biplot
Analisis statistik terdapat banyak sekali teknik dan metode untuk memecahkan suatu permasalahan. Didalam memecahkan suatu permasalahan tentunya agar data yang telah didapatkan terlihat dengan mudah, maka digunakan cara-cara didalam penyajian data tersebut. Diantaranya dengan menggunakan grafik seperti diagram batang, diagram garis, diagram pencar, diagram lingkaran, histogram dan lain sebagainya. Didalam kenyataannya diagram-diagram yang disebutkan diatas sulit digunakan atau bisa dikatakan kurang tepat lagi jika suatu data sudah besar dan kompleks. Yang dimaksud dengan kompleks disini adalah data yang melibatkan banyak peubah (multivariate). Salah satu teknik penyajian data dengan melibatkan banyak peubah adalah
dengan
cara
menggunakan
metode
biplot.
Analisis
biplot
diperkenalkan oleh Gabriel pada tahun 1971. Biplot adalah teknik statistika
9
deskriptif yang dapat disajikan secara visual guna menyajikan secara simultan n obyek pengamatan dan p peubah dalam ruang bidang datar (dimensi 2), sehingga ciri-ciri peubah dan obyek pengamatan serta posisi relatif antar obyek pengamatan dengan peubah dapat dianalisis. A biplot is a grapihical representation of the information in an n x p data matrix, the birefer to the two kind of information contained in a data matrix (Johnson,p719). Dalam prosesnya analisis biplot memerlukan data dari sejumlah objek dengan atribut-atribut (kolom dari matriks data X), yang diukur dengan skala interval dan rasio. Hasil akhir analisis ini akan diberikan dalam bentuk tampilan gambar dua dimensi yang berisi informasi tentang : 1. Posisi relatif objek. Berdasarkan informasi ini dua objek yang memiliki jarak terdekat dikatakan memiliki tingkat kemiripan yang tinggi berdasarkan atribut-atribut yang diamati. 2. Hubungan antar atribut, dari informasi ini akan diketahui mengenai hubungan linier (korelasi) antar atribut serta tingkat kepentingan suatu atribut yang didasarkan pada variannya. 3. Objek akan memiliki nilai dan nilai peubah pada suatu objek menginformasikan keuanggulan dari setiap objek. Objek yang terletak searah dengan arah dari suatu peubah, maka nilai peubah objek tersebut diatas nilai rata-rata atau sebaliknya akan dibawah rata-rata.
10
4. Didalam gambar biplot akan terlihat panjang vektor peubah yang akan sebanding dengan keragaman peubah. Semakin panjang vektor, makin bersar pula keragaman peubah. Penggabungan informasi (1) dan (2) dikenal dengan istilah bi-plot, awalan bi dalam biplot dikaitkan dengan peragaan bersama atau serempak berupa penumpang tindihan antara vector-vektor yang mewakili baris (n objek) dan kolom (p peubah) dalam dua dimensi (Siswadi dan Suharjo, 1999). Kelebihan analisis biplot yaitu, mampu menyajkan keeratan antar peubah atribut (Wahyudin et.al, 2003). Dalam prosesnya analisis biplot memerlukan data dari sejumlah objek dengan atribut-atribut yang berskala interval dan rasio (Arie Kismanto et.al, 2004). Landasan analisis ini adalah setiap matriks nXp yang berpangkat [=min{n,p}] dapat digambarkan secara pasti dalam ruang berdimensi r. Bagi matriks yang berpangkat r dan ingin digambarkan dengan baik dalam ruang berdimensi k [= r], dilakukan suatu pendekatan yang optimum dengan suatu matriks berpangkat k berdasarkan kuadrat norma perbedaan terkecil antara keduanya. Matriks hasil pendekatan terbaik tersebut digambarkan konfigurasi obyek dan peubah dalam ruang berdimensi k. Suatu matriks nXp berpangkat k dapat diuraikan sebagai nXp = nGkH’p atau xij = g’ihj. Hal ini dapat diperoleh melalui penguraian nilai singular (singular value decomposition). Tahapan-tahapan metode biplot yaitu : 1. Data matrix X (data rata-rata variabel pengamatan)
11
⎡ X 11 X 12 ⎢X X 22 21 X =⎢ ⎢M M ⎢ ⎢⎣ X n1 X n 2
L L O L
X1 p ⎤ X 2 p ⎥⎥ M ⎥ ⎥ X np ⎥⎦
Baris menunjukan stasiun TV, sedangkan kolom menunjukan variabel (jenis tayangan). 2. Koreksi tiap peubah terhadap rataannya ⎡ x11 − x1 ⎢ ⎢x − x X = ⎢ 21 1 M ⎢ ⎢ xn1 − x1 ⎣
x12 − x2 L x1 p − x p ⎤ ⎥ x22 − x2 L x2 p − x p ⎥ M O M ⎥ ⎥ xn 2 − x2 L xnp − x p ⎥⎦
3. Cari X’X 4. Cari akar ciri dan vektor cirinya, kemudian diurutkan akar cirinnya. 5. Cari matriks L, A, U ⎡ λ1 L ⎢ λ2 ⎢0 L=⎢ M ⎢M ⎢ 0 ⎣0
⎤ ⎥ L 0 ⎥ ⎥ O M ⎥ λr ⎥⎦ L L 0
unsur-unsur diagonalnya adalah akar kuadrat dari akar ciri X’X atau XX’ A = [a1, a2, … a3], matriks A adalah vektor ciri dari matriks X’X atau XX’ Selanjutnya disusun matriks U
12
1 1 ⎪⎧ 1 ⎪⎫ U =⎨ Xa1 , Xa2 ,L , Xar ⎬ , Matriks U dihitung melalui λ2 λr ⎪⎩ λ1 ⎪⎭ 1
persamaan
λi
Xai , dengan λi adalah akar cirri ke-i dari matriks X’X
dan ai adalah lajur ke-i matriks A. UU = AA = Ir, Ir adalah matriks identitas. 6. Menghitung koefisien kebaikan suai dari dua akar ciri terbesar.
χ2 =
(λ1 + λ1 )
∑λ
i
Dengan λ1 = akar ciri terbesar pertama Dengan λ1 = akar ciri terbesar kedua Dengan λ1 = akar ciri terbesar ke-i Jika nilai dari χ2 mendekati nila satu, berarti biplot yang diperoleh dari matriks akan memberikan penyajian data yang semakin baik mengenai informasi-informasi yang terdapat pada data yang sebenarnya. 7. Menentukan vektor pengaruh baris (objek) dan vektor pengaruh kolom (peubah). 8. Membuat tebaran dari vektor-vektor tersebut. a
1-a
dengan memisalkan G = UL dan H = AL
dengan nilai 0 ≤a ≤ 1.
Baris ke-i matriks G akan digunakan untuk merepresentasikan baris ke-i matrik X, yang berarti merepresntasikan objek ke-i, sedangkan baris ke-j matriks H akan digunakan untuk merepresentasikan kolom
13
ke-j matriks X, yang berarti merepresentasikan peubah ke-j. Kismanto et.al (2004, p2) Jika diambil a = 0 (G = U dan H = AL maka: -1
1. hi’hj = (n-1)sij dengan sij = (n-1) S(xik – xi)(xjk – xj). Artinya
penggandaan titik antara vektor hi dengan hj akan memberikan gambaran keragaman antara peubah ke-i dengan peubah ke-j 2. Keragaman peubah. Peubah dengan keragaman kecil digambarkan sebagai vektor yang pendek. Begitu pula sebaliknya. ih = (n-1)1/2si Artinya panjang vektor akan menggambarkan tentang keragaman peubah ke-i. Makin panjang vektor hij, makin besar pula keragaman peubah ke-i. 3. θ= rij , θ merupakan sudut antara vektor hi dengan vektor hj dan rij merupakan korelasi peubah ke-i dengan peubah ke-j. Jika sudut mendekati 0 maka makin besar korelasi positif antara dua peubah tersebut. Jika sudut dua peubah < 900 maka korelasi bersifat positif. Jika sudut dua peubah > 900 maka korelasi bersifat negatif. Semakin kecil sudutnya, maka semakin kuat korelasinya. -1
4 Bila pangkat X = p,maka (x -x )’S (x -x ) = (n-1) (g -g )’(g -g ). i
j
i
j
i
j
i
j
Artinya, (kuadrat) jarak Mahalanobis antara x dengan x akan i
j
sebanding dengan (kuadrat) jarak Euclid antara g dengan g . i
j
Makin kecil jarak Euclid antara titik g dengan g yang terlihat i
j
14
dalam plot akan memberikan gambaran makin dekatnya xi dengan x yang diukur dengan menggunakan peubah ganda asal dengan j
jarak Mahalanobis. Sebaliknya, makin besar jarak Euclid antara titik g dan g yang terlihat dalam plot akan memberikan gambaran i
j
makin jauhnya x dengan. Karakteristik suatu obyek bisa i
disimpulkan dari posisi relatifnya yang paling dekat dengan suatu peubah (dan relatif terhadap titik pusat). 2.4
Teori Perancangan Program
Rekayasa piranti lunak menurut Fritz Bauer (Pressman, 2005, p23) adalah penetapan dan pemakaian prinsip-prinsip rekayasa dalam rangka mendapatkan piranti lunak yang ekonomis, terpercaya dan bekerja efisien pada mesin komputer. Definisi perangkat lunak menurut Pressman (2001,p53) adalah : a. Instruksi-instruksi (program komputer) yang akan dijalankan akan memberikan fungsi dan kinerja yang diinginkan b. Struktur data yang membuat program mampu memanipulasi suatu informasi. c. Dokumen-dokumen yang menjelaskan operasi dan pemakaian suau program. Terdapat perbedaan antara perangkat lunak dan perangkat keras. Perangkat lunak merupakan suatu elemen sistem yang bersifat logis, bukan
15
bersifat fisik dan tidak berbentuk secara nyata. Perangkat lunak memiliki beberapa karakteristik yaitu sebagai berikut : a. Perangkat lunak dikembangkan dan direkayasa. b. Perangkat lunak tidak rusak secara sama dengan perangkat keras Perangkat keras dapat menjadi rusak karena terkena pengaruh lingkungan dan perangkat keras yang rusak tersebut dapat digantikan dengan yang baru atau diperbaiki. Lain halnya dengan perangkat lunak yang mengalamai kegagalan fungsi, maka perbaikan dilakukan penginstalan program kembali. Perangkat lunak dibuat mulai dari lingkup terkecil, dengan membuat algoritmanya dari yang sederhana sampai kepada algoritma secara utuh sehingga membentuk suatu program, yaitu perangkat lunak. Rekayasa piranti lunak adalah suatu pendekatan aplikasi yang sistematis,
disiplin
dan
mampu
mengukur
dakan
pengembangan,
pengoprasian dan pemeliharaan perangkat lunak. Menurut Pressman, rekayasa piranti lunak adalah teknologi yang berlapis-lapis. Lapisan tersebut yaitu : 1. Metode-metode (methods)
Menyediakan cara-cara untuk membangun piranti lunak. Hal yang perlu diperhatikan adalah : 1) Komunikasi 2) Analisis sistem yang diperlukan 3) Design model
16
4) Konstruksi program 5) Pengujian 2. A quality focus
Setiap pendekatan harus berdasarkan kualiatas yang menjadi komitmen suatu organisasi. 3. Alat-alat bantu (tools)
Mengadakan
peralatan-peralatan
yang
dapat
mendukung
pembuatan piranti lunak, secara otomatis atau semi otomatis untuk metode-metode seperti CASE (Computer Aided Software Engineering) yang akan mengkombinasikan sofware, hardware,
dan software engineering database. 3 Proses (process) Merupakan fondasi dari teknik perangkat lunak yang merupakan perekat yang memegang layer-layer teknologi bersamasama dan mampu secara rasional dan dari waktu kewaktu mengembangkan perangkat lunak komputer. Proses didefinisikan sebagai urutan didalam metode yang akan digunakan. Pendekatan yang digunakan untuk perancangan perangkat lunak adalah waterfall model, yang merupakan pendekatan yang paling banyak dipakai didalm pembuatan perangkat lunak. Tahapan-tahapan dari waterfall model yaitu : a. Communication
17
Inisialisasi
proyek
dan
pengumpulan
persyaratan-
persyaratan yang diperlukan dalam membangun semua elemen sistem suatu piranti lunak adalah hal yang pertama dilakukan didalam merancanf sebuah perangkat lunak. Sistem disini penting karena perangkat lunak harus berhubungan langsung dengan elemen lainnya seperti hardware, database, dan manusia. Analisis kebutuhan perangkat lunak harus mengetahui karakteristik dasar dari perangkat lunak yang akan dibuat seperti fungsi, bentuk, dan tampilan interface perangkat lunak tersebut. b. Planning
Yang termasuk dalam perencanaan perangkat lunak adalah estimasi waktu pembuatan perangkat lunak, jadwal yang telah ditetapkan untuk menyelesaikan pembuatan perangkat lunak, serta pengawasan agar pembuatan perangkat lunak tersebut berjalan pada lajur yang direncanakan. c. Modeling
Dalam tahap ini dilakukan analisis terhadap rancangan perngkat lunak dan pembuatan desain untuk tampilan perangkat lunak tersebut. d. Construction
Setelah pemodelan selesai, maka dilakukan pembuatan perangkat lunak yang direprekenansentasikan dengan kode-kode
18
program tertentu yang dipakai. Setelah pengkodean selesai, maka dilakukan tes atau uji coba keberhasilan program tersebut dalam mendekati target yang direncanakan. e. Deployment
Perangkat lunak anak menjalani proses delivery terhadap pemakai yang membutuhkan. Dukungan dan usulan dari pemakai perangkat lunak tersebut juga merupakan salah saru proses dalam pengembangan perangkat lunak tersebut. Proses pengembangan selanjutnya akan menghasilkan suatu perubahan pada perangkat lunak menjadi lebih baik dari yang sebelumnya. Perubahan dapat terjadi antara lain karena kesalahan program, proses adaptasi program untuk menyesuaikan dengan kebutuhab baru atau karena pemakai menginginkan tambahan fungsi. 2.5 Interaksi Manusia dan Komputer
Menurut Shneiderman (2005, p4), interaksi manusia dan komputer merupakan disiplin ilmu yang berhubungan dengan, perancangan, evaluasi, dan implementasi sistem komputer interkatif untuk digunakan oleh manusia, serta studi fenomena-fenomena besar yang berhubungan dengannya. Antar muka pemakai (user interface) adalah bagian sistem komputer yamg memungkinkan manusis berinteraksi dengan komputer. Tujuan antar muka pemakai adalah agar sistem komputer dapat digunakan oleh pemakai. Istilah User interface digunakan untuk merujuk kepada kemampuan yang
19
dimiliki oleh piranti lunak atau program aplikasi yang mudah dioperasikan dan dan dapat membantu menyelesaikan suati persoalan dengan hasi yang sesuai dengan keinginan pengguna, sehingga pengguna merasa nyaman untuk mengoprasikan program aplikasi yang digunakan. Suatu program yang interaktif dan baik harus bersifat user friendly. Ada lima kreteria yang harus dipenuhi suatu program seperti diatas, yaitu : 1. Waktu belajar yang tidak lama 2. Kecepatan penyajian informasi yang tepat 3. Tingkat kesalahan pemakaian rendah 4. Penghafalan sesudah melampaui jangka waktu 5. Keputusan pribadi Pedoman yang dianjurkan dalam merancang suatu program untuk mendapatkan suatu program yang user friendly yaitu : 2.5.1
Delapan aturan emas (Eight Golden Rules)
Delapan aturan emas (Eight Golden Rules) menurut Shneiderman (1998, p74-75), dalam merancang sistem interaksi manusia dan komputer yang baik yaitu : a. Strive for consistency (konsisten dalam merancang tampilan) b. Enable frequent user to use shorcuts (memungkinkan pengguna menggunakan shorcuts secara berkala) c. Offer informative feed back (memberikan umpan balik yang informatif)
20
d. Design dialogs to yield closure (merancang dialog untuk menghasilkan keadaan akhir) e. Offer simple error handling (memberikan penanganann kesalahan) f. Permit easy reversal of action (mengijinkan pembalikan aksi dengan mudah) g. Support internal locus of control (mendukung pengguna menguasai sistem) h. Reduce short-term memory load (mengurangi beban jangka pendek pada pengguna) 2.5.2
Teori waktu respon
Waktu
respon
dalam
sistem
komputer
menurut
(Scheiderman, p352) adalah jumlah detik dari saat pengguna program memulai aktifitas sampai menampilkan hasilnya dilayar atau printer. Beberapa pedoman yang disarankan diantaranya, pemakai lebih menyukai waktu respon yang pendek, waktu respon yang pangjang mengganggu, waktu respon yang pendek menyebabkan waktu pengguna berpikir lebih pendek, waktu respon harus sesuai dengan tugasnya, dan pemakai harus diberi tahu mengenai penundaan yang panjang.
21
2.6
Diagram Alir (Flowchart)
Menurut (Pressman, 2002, p476), Diagram alir merupakan urutan semua proses yang harus dijalankan unstuck mencapai tujuan yang diinginkan dalam sebuah sistem. Diagram alir menggunakan simbol-
simbol yang sudah distandarisasikan. Berikut adalah simbol-simbol yang digunakan untuk menggambarkan diagram alir:
22
Tabel 2.1. Simbol Flowchart (Hollander, 2000, pp403-405)
Notasi
Arti Notasi Proses Predefined proses
Operasi input / output Decision, berupa pertanyaan atau penentuan suatu keputusan Terminal, untuk menandai awal dan akhir program Panah, sebagai penghubung antar komponen dan penunjuk arah Manual input, input dari pengguna On-page connector, sebagai penghubung dalam satu halaman Off-page connector, sebagai penghubung antar halaman yang berbeda
2.7
State Transition Diagram (STD)
Menurut Whitten (2004, pp673-674), STD merupakan diagram yang digunakan untuk menggambarkan urutan dan variasi dari layar yang
23
terjadi ketika pengguna sistem berada di terminal. Ada beberapa notasi yang digunakan dalam menggambarkan suatu STD, yaitu : a. Kotak Lambang kotak digunakan untuk mewakili layar tampilan. Lambang ini hanya menggambarkan sesuatu yang mungkin tampil selama dialog. b. Panah Panah digunakan untuk mewakili kontrol aliran dan event yang memicu aktifnya sebuah layar. Arah panah mengindikasikan urutan dimana layar tersebut tampil.
2.8
Basis Data (Database)
Menurut Farthansyah (2004,p7), Basis Data merupakan salah satu komponen dari Sistem Basis Data dan terdiri atas 3 hal yaitu kumpulan data yang terorganisir, relasi antar data dan objektifnya. Ada banyak pilihan dalam mengorganisasi data dan ada banyak pertimbangan dalam membentuk relasi antar data, namun pada akhirnya yang terpenting adalah objek utama yang harus selalu kita ingat yaitu kecepatan dan kemudahan berinteraksi dengan data yang dikelola/diolah. Seperti telah dikemukakan di atas, bahwa Basis Data hanya merupakan satu komponen dari Sistem Basis Data, jadi masih ada komponen lainnya yaitu perangkat keras, perangkat lunak serta pemakai.
24
Data base yang digunakan didalam skripsi ini yaitu menggunakan sql server 2000. 2.9
Bahasa pemrograman yang dipakai
Didalam pembuatan skripsi ini, bahasa pemrograman yang digunakan adalah VB.net dan R language. R adalah suatu sistem untuk komputasi statistika dan grafik yang dapat dijalankan pada platform UNIX, Windows, dan MacOS. R menyediakan banyak hal diantaranya, sebuah bahasa pemrograman, teknik statistika dan grafik tingkat tinggi (model linier dan nonlinear), pengujian statistika, analisis deret waktu, klasifikasi, kluster, akses ke bahasa pemrograman yang lainnya dan fasilitas perbaikan kesalahan (debug). Beberapa hal yang dimiliki oleh S antara lain : 1. Memanggil langsung subrountin fortran 2. Interaktif 3. Transisi macros ke function 4. Memungkinkan suatu fungsi dipakai oleh fungsi yang lain 5. Pemakaian bahasa S yang agak sedikit rumit Beberapa hal yang dimiliki oleh R antara lain : 1. Pengaturan data dan fasilitas penyimpanan yang efektif 2. Operator yang cocok untuk perhitungan array dan matrik 3. Koleksi yang tergabung dan besar dari alat yang bisa digunakan untuk analisis data
25
4. Fasilitas grafik untuk analisis data dan menyediakannya
pada komputer atau hardcopy 5. Bahasa pemograman yang sederhana, efektif dan dikembangkan dengan baik yang meliputi syarat, pengulangan, fungsi rekursif dan fasilitas input serta output. R language adalah versi lain dari S language. R dikembangkan
pada laboratorium Bell oleh John M Chambers dan rekan-rekan pada tauhun 1980 dan sejak itu telah dipakai secara luas dalam komunitas statistika. John M Chambers sendiri telah mendapat penghargaan ”1998 ACM Software Systems For S”. Ada banyak kesamaan antara S dan R, namun ada juga beberapa perbedaan yang penting. R dipakai jika kita ingin menggunakan software yang bisa diperoleh secara gratis dengan cara men download dari http://www.r-project.org. Versi terbaru dari R language adalah versi 2.8.0. Untuk mengikuti perkembangan software R,
maka penelitian ini menggunakan R versi terbaru.