Anda di halaman 1dari 28

INTRODUCTION TO

R PROGRAMMING
Tutorial dasar R Programming untuk pemula

Dr. Syamsidik, ST., M.Sc dan Mumtaz Luthfi, S.T.

Banda Aceh. May, 2018


1. Pendahuluan
R adalah Bahasa pemrograman dan perangkat lunak untuk analisis statistika dan grafik. R
dibuat oleh Ross Ihaka dan Robert Gentleman di Universitas Auckland, Selandia Baru, dan kini
dikembangkan oleh R Development Core Team, di mana Chambers merupakan anggotanya. R
dinamakan berdasarkan nama kedua pembuatnya (Robert Gentleman dan Ross Ihaka).

Bahasa R kini menjadi standar de facto oleh statistikawan untuk pengembangan


perangkat lunak statistika, serta digunakan secara luas untuk pengembangan perangkat lunak
statistika dan analisis data.

R merupakan bagian dari proyek GNU. Kode sumbernya tersedia secara bebas (open
source) di bawah Lisensi Publik Umum GNU, dan versi biner prekompilasinya tersedia untuk
berbagai sistem operasi. R menggunakan antarmuka baris perintah, meski beberapa antarmuka
pengguna (user interface) grafik juga tersedia (Wikipedia).

2. User Interface

1
Pada gambar diatas terdapat dua layar (Screen). Screen 1 adalah R Console, dimana layar
tersebut merupakan tempat untuk compiling dan running perintah Bahasa program, serta untuk
melihat informasi hasil compile dan run tersebut. Screen 2 adalah R Editor, dimana merupakan
tempat untuk menuliskan perintah dan listing program yang disimpan dalam format *.R. Screen 2
akan muncul ketika anda membuka file > new script, atau dengan menekan Ctrl+N.

Penulisan list program pada Screen 1 dapat dijalankan dan langsung didapatkan hasilnya,
biasanya penulisan pada Screen 1 tersebut digunakan untuk memeriksa hasil dari baris tertentu
dari sebuah list program. Sedangkan layer R Editor (Screen 2) digunakan untuk menuliskan list
keseluruhan program. Dimana untuk menjalankan program tersebut dilakukan dengan cara blok +
Ctrl+R (Perintah compile dan run). Jika compile dan run berhasil dijalankan, list yang kita jalankan
(yang diblok + Ctrl+R pada Screen 2) akan muncul pada Screen 1 dalam warna merah, dan juga
tidak terdapat pesan error (Lihat gambar diatas).

2
Jika terdapat pesan error berwarna biru (lihat gambar diatas), berarti telah terjadi
kesalahan pada penulisan list program yang kita compile dan running.

R Program juga menyediakan fitur add-on berupa packages yang dapat diunduh secara
gratis (open source). Packages berupa perintah atau listing program yang sudah pernah dibuat
sebelumnya, dan dapat digunakan untuk tujuan dan permasalahan tertentu.

3
3. Operator Dasar Aritmatika
R Program sebagai bahasa program analisis data dibekali dengan operator, fungsi, dan
perintah matematika dan logika, dimulai dari yang sangat dasar (pertambahan, perkalian, akar,
kuadrat, dll.) hingga yang kompleks (mean, Fast Fourier Transform/FFT, dll.).

Berikut beberapa contoh Operator Dasar Aritmatika:

1. Addition/Pertambahan ( + );
2. Substraction/Pengurangan ( - );
3. Multiplication/Perkalian ( * );
4. Division/Pembagian ( / );
5. Power/Pangkat ( ^ );
6. Square Root/Akar Kuadrat ( sqrt( ) );
7. Mean/Nilai rata-rata ( mean( ) );
8. Equal Sign/Sama Dengan ( <- );
9. Sum/Total ( sum( ) );
10. Minimum Value/Nilai Minimum ( min ( ) );
11. Maximum Value/Nilai Maksimum ( max ( ) ).

4
Gambar diatas merupakan contoh dari perhitungan matematis sederhana. Pada kotak
merah terdapat variabel “a” dan “b” yang ditetapkan terhadap nilai tertentu (assigned value),
yaitu : a <- 5 dan b <- 4. Tanda <- merupakan operator sama dengan ( = ).
Pada baris-baris selanjutnya dapat dilihat beberapa contoh perhitungan sederhana yang
dijalankan (dengan menekan tombol return/enter setelah dituliskan) pada layar R Console (Screen
1).
Tips: Untuk membersihkan layar pada R Console (Screen 1) dapat dilakukan dengan cara menekan
Ctrl + L (Clear Window).

5
Pada R Program, sebuah nilai yang sudah ditetapkan sebelumnya (assigned value) pada
sebuah varibel (pada contoh adalah variabel “d”) akan tertimpa/tergantikan dengan nilai baru jika
detatapkan kemudian (lihat gambar di atas pada layar R Editor). Pada gambar diatas, list
program ditulis pada layar R Editor (Screen 2), kemudian di jalankan (Blok + Ctrl+R) sehingga
pada layar R Console (Screen 1) muncul tulisan merah. Kemudian kita dapat memeriksa hasil
kembali pada layar R Console dengan cara menuliskan nama variabel pada R Console (yaitu “d”)
dan menekan tombol Return/Enter dan pada gambar didapatkan hasil dengan nilai 20.

Tips: Untuk memperbesar tampilan layar pada R Editor (Screen 2) dapat dilakukan dengan cara
menekan Ctrl + Mouse 3 (Scroll) pada layar tersebut.

Harus diperhatikan penggunaan karakter pada R Console adalah Case-Sensitive, dimana


besar/kecil huruf dicatat sebagai variabel berbeda. Seperti pada gambar di atas, variabel “d” dan
“D” adalah dua variabel yang berbeda, dimana variabel “d” bernilai 20, sedangkan variabel “D”
bernilai 15.

Tips: Untuk proses compile dan running pada layar R Editor ( Blok + Ctrl+R ), pengguna tidak
diharuskan untuk mem-blok seluruh list program pada layar tersebut, cukup pada baris-baris yang diinginkan
untuk di compile/running.

6
4. Working Directory

Langkah awal dalam menulis list program adalah dengan membuka layar R Editor baru
(File > New Script, atau Ctrl + N). Kemudian dilanjutkan dengan menyimpan file tersebut (File +
Save, atau Ctrl + S) kedalam working directory (lokasi penyimpanan pada drive). Nama file akan
tersimpan dalam format *.R (lihat gambar di atas).

Selanjutnya, untuk menetapkan working directory pada layar R Editor dilakukan dengan
menuliskan perintah:

setwd ("D:/Folder/SubFolder")

7
Dimana lokasi folder maupun sub-folder pada working directory dituliskan diantara dua
tanda kutip ( “,” ). Lokasi pada contoh adalah D:\R Programming\Grafik, sehingga perintah ditulis
menjadi:

setwd ("D:/R Programming/Grafik")

Tips: Pada R Program working directory ditulis menggunakan Forward Slash ( / ), bukan Back Slash
( \ ). Pada contoh di atas lokasi harus diganti dari “D:\R Programming\Grafik” menjadi “D:/R
Programming/Grafik”.

5. File Input
File input dapat berupa file internal yang dituliskan secara langsung maupun file eksternal
(file berformat *.csv, *.txt, dll.). Pada contoh kali ini, file yang digunakan ialah file Ms. Excel
dengan ekstensi *.csv. Data yang digunakan adalah data jumlah penduduk Provinsi Aceh Tahun
2005-2014 seperti gambar dibawah berikut.

8
(Sumber: Badan Pusat Statistik Provinsi Aceh, https://aceh.bps.go.id)

Data tersebut disimpan dalam format .csv pada lokasi folder yang sama dengan working
directory sebelumnya (“D:\R Programming\Grafik”) seperti gambar dibawah ini.

Data pada file input.csv terdiri atas 4 kolom. Kolom pertama adalah nomor, kolom kedua
adalah tahun pencatatan, kolom ketiga adalah jumlah penduduk pria, dan kolom keempat adalah
jumlah penduduk wanita (jumlah penduduk dalam Ribu Jiwa).

9
Langkah selanjutnya ialah melakukan pembacaan data, perintah untuk membaca file input
eksternal dengan format .csv ialah:

a <- read.csv ( “namafile.csv” , header=T )

Pada perintah diatas, a adalah variabel yang dirujuk sebagai file dengan format *.csv. Nama
file dapat diganti pada dalam tanda kutip menjadi nama file yang diinginkan (dalam case ini
“input.csv”). Header adalah kepala tabel, yaitu baris pejrtama pada tabel. Pada perintah diatas
header bernilai T atau True (bernilai benar) Jika pada file *.csv tidak terdapat kepala tabel, maka
perintah header harus diganti dengan F atau False (bernilai salah). Pada contoh nama file adalah
input.csv dan terdapat header pada tabel, maka perintah menjadi:

a <- read.csv ( “input.csv” , header=T )

Setelah menuliskan perintah pembacaan file eksternal, maka kita dapat mencoba untuk
menguji kebenaran hasil. Jika kita compile perintah pada R Editor dan run variabel a pada layar R
Console, maka seharusnya didapatkan nilai tabel persis seperti pada file input.csv sebelumnya
(lihat gambar diatas).

10
Setelah file tersebut dibaca, maka kita dapat menetapkan variabel untuk masing-masing
kolom. Secara umum perintah untuk penetapan variabel terhadap file input yang telah dibaca
adalah seperti berikut:

b <- a [ , 1 ]

Variabel “a” merupakan variabel rujukan dari file input sebelumnya, tanda dalam kurung
siku “ [ “, “ ] “ merupakan lokasi kolom pada tabel, dan variabel “b” merupakan nama untuk sebuah
besaran baru yang terdapat pada variabel rujukan “a”. Pada perintah diatas adalah sebagai contoh
variabel untuk nomor urut (kolom pertama pada tabel) yang ditetapkan dengan huruf “b” yang
terletak pada kolom pertama ( “ [ , 1 ] “ ) pada file rujukan “a”. Untuk lebih jelas dapat dilihat pada
gambar dibawah

Pada case tersebut ditetapkan: variabel “b” sebagai nomor urut, “c” sebagai tahun
pencatatan, “d” sebagai jumlah penduduk pria, dan “e” sebagai jumlah penduduk wanita. Sehingga
ditulis masing-masing seperti gambar diatas. Pada layar R Console dapat dicek kembali kebenaran
perintah yang sudah dijalankan (lihat gambar diatas).

Tips: Untuk memberikan catatan kaki (foot notes) dapat menggunakan tanda pagar (Hashtag) “#”
dan diikuti dengan nota yang dinginkan. Perintah maupun tulisan yang diikuti oleh tanda pagar tidak
dijalankan oleh R Program (lihat gambar diatas).

11

6. Plotting Graph
Langkah selanjutnya, kita akan membuat grafik pertambahan penduduk Aceh tahun 2005
sampai 2014 untuk tiap jenis kelamin. R Console dapat menampilkan bermacam-macam grafik.
Pada case ini akan digunakan grafik jenis Scatter X dan Y. Untuk menampilkan grafik Scatter
dapat dilakukan dengan perintah:

plot ( x , y )

Pada perintah diatas, plot ( x , y ) digunakan untuk membuat grafik, dimana posisi “x”
merupakan variabel yang akan di plot pada sumbu X dan posisi “y” untuk variabel pada sumbu Y.
Pada case ini kita akan menampilkan grafik dengan Tahun pencatatan (variabel “c”) sebagi sumbu
X dan Jumlah penduduk (misal variabel yang digunakan adalah penduduk pria, maka digunakan
variabel “d”) sebagai sumbu Y. Maka perintah menjadi:

plot ( c , d )

Maka hasil plot secara default akan terlihat seperti gambar diatas. Untuk memberikan
atribut-atribut lain pada grafik dapat dilakukan dengan menambahkan berbagai perintah seperti:

12
plot ( x , y , ty = ’ l ’ , xlim = c ( 0 , 10 ) , ylim = c (
0 , 10 ) , xlab = " labx " , ylab = " laby " , main = "
title " , cex.axis = 1.5 , cex.main = 2 , lwd = 3 , col = "
red " , lty = 1 )
Ket:
• Jenis plot yang digunakan (type of plot) dapat ditentukan dengan menuliskan perintah ty,
dimana parameter “ l “ untuk jenis garis (line) dan “ p “ untuk titik (point) ditulis setelah
tanda sama dengan ( = );
• Batas (range limit) minimum dan maksimum untuk masing-masing sumbu (X dan Y) dapat
menggunakan perintah xlim dan ylim, dimana angka parameter ditetapkan dengan perintah
c ( min , max ) setelah tanda sama dengan ( = );
• Label sumbu X dan Y dapat menggunakan perintah xlab dan ylab, dan perintah main
digunakan untuk memberikan judul grafik, dimana parameter ditulis setelah tanda sama
dengan ( = ) dan diikuti dengan tanda kutip ( “ , “ ) yang dapat diisi dengan nama label atau
judul grafik yang dikehendaki;
• Ukuran tulisan (font size) pada sumbu dan judul grafik dapat diubah dengan menggunakan
perintah cex.axis (untuk font size sumbu) dan cex.main (untuk font size judul grafik),
dimana angka parameter ditetapkan setelah tanda sama dengan ( = );
• Ketebalan garis (pada type of plot line) dapat diubah menggunakan perintah lwd, dimana
angka parameter ditetapkan setelah tanda sama dengan ( = ). Sedangkan untuk jenis plot
point, perintah yang digunakan adalah cex;
• Warna garis pada plot garis atau warna titik pada plot point dapat diubah dengan
menggunakan perintah col, dimana parameter warna ditulis setelah tanda sama dengan ( =
) dan diikuti dengan tanda kutip ( “ , “ ) yang dapat diisi dengan kode warna dalam Bahasa
Inggris (Contoh: “red”, “blue”, “cyan”, “green”, dsb.);
• Jenis garis (pada type of plot line) dapat dubah dengan menggunakan perintah lty, dimana
parameter kode jenis garis ditetapkan setelah tanda sama dengan ( = ). Sedangkan untuk
jenis plot point, perintah yang digunakan adalah pch. Kode merupakan angka integer (1, 2,
3, dst.). Beberapa contoh kode jenis garis dan titik dapat dilihat pada gambar dibawah ini.

13
Gambar diatas merupakan beberapa contoh jenis garis (lty = 1, 2, 3, dan 4).

Gambar diatas merupakan beberapa contoh jenis titik (pch = 1, 2, 3, dan 4).

14
Selanjutnya, langkah yang ditempuh ialah menuliskan perintah berbagai atribut untuk
grafik pertambahan penduduk. Berikut perintah dan hasil plot grafik pertumbuhan penduduk
Aceh dengan jenis garis:

plot ( c , d , ty = " l " , xlim = c ( 2005 , 2014 ) , ylim


= c ( 2000 , 2600 ) , xlab = " Tahun Pencatatan " , ylab =
" Jumlah Penduduk Pria (x 1000 jiwa) " , main = "
Pertumbuhan Penduduk Aceh (Pria) " , cex.axis = 1.5 ,
cex.main = 1 , lwd = 3 , col = " red " , lty = 1 )

Selain itu kita juga dapat membuat plot grafik dengan jenis titik, berikut perintah dan
hasil plot grafiknya:

plot ( c , d , ty = " p " , xlim = c ( 2005 , 2014 ) , ylim


= c ( 2000 , 2600 ) , xlab = " Tahun Pencatatan " , ylab =
" Jumlah Penduduk Pria (x 1000 jiwa) " , main = "
Pertumbuhan Penduduk Aceh (Pria) " , cex.axis = 1.5 ,
cex.main = 1 , cex = 1.5 , col = " red " , pch = 1 )

15
Tips: Pada R Program, penulisan satu perintah dapat dipisah pada baris baru hanya dengan
menekan tombol Return/Enter tanpa harus memberikan perintah tambahan (lihat contoh pada gambar di
atas).


Langkah selanjutnya, pada R Program kita dapat membuat lebih dari satu grafik. Pada case
kali ini, kita akan membuat grafik baru yaitu pertambahan jumlah penduduk Aceh dengan jenis
kelamin wanita. Plot data dapat dimunculkan dalam satu grafik maupun beberapa grafik. Pada
satu grafik yang sama, perintah untuk memunculkan plot baru yaitu:

par ( new = T )

Dimana perintah tersebut dituliskan setelah perintah plot sebelumnya. Kemudian perintah
plot grafik baru dituliskan setelahnya. Pada case ini, perintah plot grafik baru menggunakan
parameter Tahun Pencatatan dengan variabel “c” dan Pertumbuhan Penduduk Wanita dengan
variabel “e”. Atribut perintah tambahan dapat dimodifikasi sesuai kebutuhan, dimana pada
perintah label sumbu harus dikosongkan agar tulisan sumbu tidak saling tumpeng tindih.
Kemudian parameter lain pada atribut juga harus sama. Perintah keseluruhan plot yaitu:

plot ( c , d , ty = " l " , xlim = c ( 2005 , 2014 ) , ylim


= c ( 2000 , 2600 ) , xlab = " Tahun Pencatatan " , ylab = "
Jumlah Penduduk (x 1000 jiwa) " , main = " Pertumbuhan

16
Penduduk Aceh " , cex.axis = 1.5 , cex.main = 1 , lwd = 3 ,
col = " red " , lty = 1 )

par ( new = T )

plot ( c , e , ty = " l " , xlim = c ( 2005 , 2014 ) , ylim


= c ( 2000 , 2600 ) , xlab = " ", ylab = " ", main = " ",
cex.axis = 1.5 , cex.main = 1 , lwd = 3 , col = "blue" , lty
= 1 )

Hasil plot grafik dapat dilihat pada gambar dibawah ini.

Tips: Pada Plot Grafik, dapat juga dimunculkan garis grid dengan menggunakan perintah grid ( )
dituliskan setelah perintah plot (lihat gambar di atas).


Pada grafik diatas, pembacaan informasi grafik masih kurang dikarenakan tidak adanya
legenda. Untuk memunculkan legenda dapat dilakukan dengan perintah:

17
plot ( c , e , ty = " l " , xlim = c ( 2005 , 2014 ) , ylim = c ( 2000 , 2600 ) , xlab = " Tahun
Pencatatan" , ylab = " Jumlah Penduduk (x 1000 jiwa)", main = " Pertumbuhan Penduduk Aceh
(Wanita) ", cex.axis = 1 , cex.main = 1 , lwd = 3 , col = " blue " , lty = 1 )

Perintah yang diikuti setelah tulisan legend ( “ “ ) diisi dengan lokasi penempatan legenda
yang ditulis dalam Bahasa Inggris ( “ bottomleft “,” topright “, “center”, dsb.). Kemudian, pada
perintah legend = c ( “ “. “ “ ) diisi dengan tulisan label pada legenda, untuk case diatas grafik
pertama ialah “Pria” dan grafik kedua ialah “Wanita”. Selanjutnya perintah col = c ( “ “. “ “ )
diisi dengan jenis warna yang sama dengan warna garis pada perintah plot. Pada contoh diatas
grafik Pria mengunakan warna merah “red” dan grafik Wanita menggunakan warna biru “blue”.
Dan yang terakhir, jenis simbol yang digunakan dapat berupa garis maupun titik. Pada contoh
digunakan jenis garis maka perintah yang digunakan ialah lty = c ( 1 , 1 ), dimana setelah tanda
sama dengan merupakan kode jenis garis atau titik seperti pada perintah plot (jika menggunakan
titik maka perintah yang digunakan ialah pch). Hasil grafik berikut dengan legendanya dapat
dilihat pada gambar dibawah ini.

Pada R Program grafik juga dapat dibuat dengan cara lain. Yaitu dengan menampilkan
beberapa grafik dalam plot area yang berbeda (tidak tumpeng tindih). Cara membuat beberapa
grafik pada area yang berbeda yaitu dengan menggunakan perintah:

18
par ( mfrow = c ( 1 , 2 ) )
plot ( x, y …………………………………………………………………)

plot.new ( )
par ( new = T )
plot ( x, z …………………………………………………………………)
Dimana perintah par ( mfrow = c ( 1 , 2) ) ditulis sebelum perintah plot pertama, dan
perintah plot.new ( ) ditulis setelah perintah plot pertama dan kemudian diikuti dengan perintah
par ( new = T ). Selanjutnya perintah plot kedua dituliskan setelah par (new = T).
Pada perintah par ( mfrow = c ( 2 , 1 ) ), parameter angka merupakan jumlah grafik pada
baris dan kolom. Pada contoh kita akan menggunakan 2 grafik yang akan ditulis berderetan dari
atas kebawah (secara vertical), maka perintahnya menjadi par ( mfrow = c ( 2 , 1 ) ). Pada case
ini maka perintah dituliskan menjadi:
par ( mfrow = c ( 2 , 1 ) )

plot ( c , d , ty = "l" , xlim = c ( 2005 , 2014 ) , ylim =


c ( 2000 , 2600 ) , xlab = " Tahun Pencatatan " , ylab = "
Jumlah Penduduk (x 1000 jiwa) " , main = " Pertumbuhan
Penduduk Aceh (Pria) " , cex.axis = 1 , cex.main = 1 , lwd
= 3 , col = " red " , lty = 1 )

grid ( )

plot.new ( )

par ( new = T )

plot ( c , e , ty = " l " , xlim = c ( 2005 , 2014 ) , ylim


= c ( 2000 , 2600 ) , xlab = " Tahun Pencatatan" , ylab = "
Jumlah Penduduk (x 1000 jiwa)", main = " Pertumbuhan
Penduduk Aceh (Wanita) ", cex.axis = 1 , cex.main = 1 , lwd
= 3 , col = " blue " , lty = 1 )

19
grid ( )
Maka hasil grafik dapat dilihat seperti berikut ini.

Jika grafik ingin dibuat berderet dari kiri ke kanan (secara horizontal), maka perintah
menjadi : par ( mfrow = c ( 1 , 2 ) ) , kemudian diikuti dengan perintah yang sama seperti
sebelumnya. Hasil grafik akan menjadi seperti berikut.

20
6. Generating Data Sequence
Sequence (Deret) sangat diperlukan pada sebuah Bahasa Program. Pada R Program,
sejumlah deret bilangan dapat dihasilkan dengan menggunakan perintah. Sebuah deret integer
biasa, sebagai contoh deret dari 1 hingga 10, dapat dihasilkan dengan perintah:

x <- 1 : 10

Hasil yang didapatkan berupa vektor variabel “x” dengan 10 elemennya:

> x

[1] 1 2 3 4 5 6 7 8 9 10

Tips: Perintah length( x ) dapat digunakan untuk mengetahui rentang data variabel x. Sebagai
contoh, jika kita menulis perintah length(x) setelah menulis sequence diatas ( x <- 1:10 ), maka akan
didapatkan nilai 10.

Prioritas penulisan operator aritmetika (perkalian, pengurangan, tanda kurung) juga


berlaku dalam penulisan sequence. Contohnya dapat dilihat seperti dibawah ini:

> 1:10-1

[1] 0 1 2 3 4 5 6 7 8 9

> 1:(10-1)

[1] 1 2 3 4 5 6 7 8 9

Fungsi seq dapat digunakan untuk menghasilkan angka real (real numbers). Parameter
pertama merupakan start point (nilai min), yang kedua merupakan end point (nilai max), dan
parameter yang terakhir merupakan kenaikan interval. Contoh, untuk kenaikan 0.5 dimulai dengan
angka 1 dan diakhiri dengan angka 5, maka perintah seq dapat ditulis sebagai berikut:

> seq (1, 5, 0.5)

[1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0

Perintah dapat juga ditulis dengan menggunakan parameter attribute length, from dan to.
Seperti contoh berikut:

21
> seq (length = 9, from = 1, to = 5)

[1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0

Perintah lain yang juga berguna yaitu rep. Perintah ini dapat membuat deretan data
dengan semua nilai yang identik (lihat contoh berikut).

> rep(1,10)

[1] 1 1 1 1 1 1 1 1 1 1

7. Loop and Determination


Fungsi Looping dan Determination (If Statements) sangat diperlukan dalam Bahasa
pemrograman manapun. Secara umum Loop pada R Program terbagi menjadi 3 bagian, yaitu: for
loop, while loop, dan repeat loop. Kegunaan masing-masing loop dapat dilihat pada flow chart
dibawah ini.

(Sumber: www.datacamp.com)

22
Pada R Program fungsi Looping paling dasar menggunakan perintah for, berikut contoh
pengunaanya:

for ( i in b:c ) {
print ( i )
}
Pada perintah diatas, variabel “i” merupakan variabel yang berulang (memiliki nilai
sebanyak b sampai c), variabel “b” merupakan start point dari loop, dan variabel “c” merupakan
end point dari loop. Kemudian perintah dapat ditambahkan dengan diikuti tanda kurung kurawal
(curly brackets) pembuka “ { “ dan diakhiri penutup “ } “. Pada contoh diatas perintah sederhana
yang digunakan adalah perintah print ( ), dimana perintah tersebut akan menampilkan hasil
variabel yang dituliskan didalam tanda kurung (variabel “i”). Sebagai contoh, kita akan membuat
penulisan tahun yang berulang dengan variabel “year” sebanyak 10 tahun dengan variabel “n”.
Tahun dimulai dari 2000 hingga 2009, kemudian hasil akan dituliskan dengan perintah print( ).
Lihat contoh penulisan program dan hasilnya seperti berikut:

n <- 2000 : 2009

for (year in n) {

print (year)

23
Pada gambar diatas, variabel “year” memiliki nilai yang dimulai dari 2000 hingga 2009,
kemudian perintah selanjutnya diikuti dengan tanda curly brackets “ { “. Dalam case kali ini
perintah selanjutnya adalah print (year), dimana hasil akan di print dan dapat dilihat pada layar R
Console. Perintah print( ) dapat juga ditulis dengan beberapa variabel dan juga menambahkan
kata/kalimat dengan menggunakan atribut paste( ) (lihat contoh dibawah ini).

Dalam Loop juga terdapat nesting, nesting adalah memberikan fungsi perintah (loop, if
statements, dll.) berlapis pada sebuah perintah yang sejenis dengan tujuan tertentu. Sebagai
contoh, kita dapat membuat matriks 10 x 10 dengan nama variabel “mat”, dimana nilai dari
matriks tersebut berupa nilai dari perkalian 1 sampai 10 yang akan ditentukan dengan fungsi loop
dengan nesting. Berikut merupakan perintah dan hasil yang dijalankan:

24
mat <- matrix(nrow=10, ncol=10)

for(i in 1:dim(mat)[1]) {

for(j in 1:dim(mat)[2]) {

mat[i,j] = i*j

mat[1:5, 1:5]

Pada baris pertama merupakan perintah menampilkan matriks, dimana parameter nrow dan
ncol merupakan jumlah baris dan kolom pada matriks tersebut (matriks “mat”). Pada baris
selanjutnya dimulai looping dengan variabel “i” yang merupakan nilai dari 1 hingga total dimensi
matriks “mat” ( 1:dim(mat) ) kemudian diikuti label dengan tanda kurung siku dengan nilai satu
( [ 1 ] ) yang harus ditulis untuk membedakan dengan baris selanjutnya. Kemudian baris
selanjutnya sama halnya dengan baris kedua, hanya saja variabel yang digunakan ialah “j” dan
label dua ( [ 2 ] ). Kemudian pada baris selanjutnya, nilai matriks “mat” ditentukan dengan perintah
“ mat[ i , j ] = i * j “, yang akan menghitung perkalian 1 hingga 10. Kemudian kita dapat
menampilkan hasil hanya untuk perkalian satu hingga lima saja (atau sesuai keinginan), yaitu
dengan mengisi nilai parameter “ 1 : 5 ” ke dalam kurung siku pada lokasi baris dan kolom pada
matriks “mat”. Hasil dapat dilihat seperti pada layar R Console pada gambar dibawah ini.

25
Pada perintah while pada looping, jika kondisi awal dengan operator logika (determination)
tidak terpenuhi (bernilai False), maka perintah tidak akan dijalankan. Sedangkan jika kondisi
terpenuhi maka perintah (instruction) dapat ditentukan sesuai kebutuhan. Sebagai contoh
sederhana, perintah while dapat ditulis seperti:

while (i < 5) {

print (i)

i = i + 1

Pada perintah diatas, kondisi yang ditentukan dituliskan dalam tanda kurung setelah
perintah while( ) merupakan operator logika yang dapat diisi dengan: lebih kecil dari “<“ , lebih
besar dari “>” , lebih kecil sama dengan “<=” , lebih besar sama dengan “>=” , sama dengan
“==”, dan tidak sama dengan “!=”. Hasil perintah diatas dapat dilihat pada layar R Console
dibawah ini.

Tips: Jika perintah yang dijalankan tidak mengeluarkan hasil, ada kemungkinan bahwa perintah loop
yang dijalankan salah ditulis dan menyebabkan loop tidak berhenti (endless loop). Maka untuk
mengantisipasinya dapat dilakukan dengan Klik layar R Console > Misc > Stop all computations.

26
Pada perintah repeat pada looping, jika kondisi awal dengan operator logika
(determination) tidak terpenuhi (bernilai False), maka perintah akan dijalankan kembali ke
instruksi awal dan kemudian akan diteruskan hingga kondisi awal (determination) bernilai True.
Sebagai contoh, perintah repeat dapat ditulis seperti:

x<-0

repeat{

if(x<=5)x<-x+1

else if(x==6) break

else break

Pada contoh diatas, perintah else if dan else dapat diugnakan untuk menambah kondisi
(determination). Sedangkan perintah break dapat dilakukan untuk memberhentikan proses looping.
Selain break peritah lainnya yang dapat dituliskan ialah next. Hasil perintah diatas dapat dilihat
pada gambar dibawah ini.

27

Anda mungkin juga menyukai