Fitur Dasar R PDF
Fitur Dasar R PDF
IV
Fitur Dasar R
R beroperasi pada suatu struktur data, contoh yang paling sederhana adalah vektor
numerik, yakni suatu entitas tunggal yang terdiri dari koleksi terurut bilangan-
bilangan. Misalkan pembuatan vektor numerik x yang mempunyai enam bilangan
11.0, 16.2, 7.2, 1.3, 8.3, 3.6. Perintah yang digunakan pada prompt (>) R sebagai
berikut:
Fungsi assign() identik dengan operator “<-“. Selain operan x terletak di sebelah
kiri, pada R operan x tersebut dapat terletak di sebelah kanan dan dengan
menggunakan tanda assignment ”->” yang berlawanan dengan tanda assignment
sebelumnya, seperti berikut ini:
22
Perintah berikut:
> y <− c(x,0,x)
> y
[1] 11.0 16.2 7.2 1.3 8.3 0.0 11.0 16.2 7.2 1.3 8.3
Vektor Aritmatika
Perintah tersebut di atas akan menghasilkan vektor v dengan panjang sesuai dengan
panjang vektor y, yaitu 11. Dimana vektor x diulang sebanyak 11/5 (2.2) kali dan
konstanta 1 diulang sebanyak 11/1 (11) kali.
Beberapa operator aritmatik yang tersedia di R untuk operasi vektor adalah seperti
pada tabel berikut:
Sebagai contoh, untuk menghitung dua nilai dalam sample, yakni mean dan variansi
(var) dapat kita tuliskan formula sum(x)/length(x) untuk mean(x) dan
sum((x-mean(x))^2)/(length(x)-1) untuk var(x)
Fungsi sort(x) akan menghasilkan sebuah vektor yang berukuran sama dengan
vector x dimana elemennya sudah terurut dengan urutan menaik; selain itu terdapat
23
fasilitas pengurutan lain yang fleksibel (lihat fungsi order() atau sort.list()
yang menghasilkan suatu permutasi dalam pengurutan).
> sort(x)
[1] 1.3 7.2 8.3 11.0 16.2
> order(x)
[1] 4 3 5 1 2
> sort.list(x)
[1] 4 3 5 1 2
Catatan: fungsi max dan min memilih nilai terbesar dan terkecil dari input argumen.
Fungsi parallel maksimum (pmax) dan parallel minimum (pmin) menghasilkan
sebuah vector (yang panjangnya sama dengan vector yang terpanjang dari input
argumen) dimana elemennya merupakan nilai terbesar (terkecil) diantara nilai elemen
pada posisi yang sama dari vector-vektor input argument yang dibandingkan.
Pada kebanyakan penggunaan, kita tidak perlu memperhatikan tipe data numeric
vektor apakah integer, real atau bahkan kompleks. Pada dasarnya R akan
menggunakan tipe data real dengan double precision untuk melakukan proses
aritmatika (untuk bilangan kompleks menggunakan double procision complex).
Perhitungan bilangan kompleks secara eksplisit menggunakan format bilangan
kompleks tersebut. Sebagai contoh:
> sqrt(-17)
Warning message:
In sqrt(-17) : NaNs produced
Kesalahan disebabkan oleh tidak ada nilai untuk akar negatif, sehingga perlu
dikonversi nilai -17 sebagai bilangan kompleks, yaitu -17 + 0i sehingga pencarian
nilai akar -17 adalah:
> sqrt(-17+0i)
[1] 0+4.123106i
Barisan
akan menghasilkan
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
24
Keterangan: [1] pada sisi paling kiri mengartikan baris ke-1 dari hasil perhitungan
di R
Barisan bilangan juga dapat dibangkitkan dengan cacah kelipatan tertentu. Misalkan:
> s3
[1] -5.0 -4.5 -4.0 -3.5 -3.0 -2.5 -2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0
1.5 2.0
[16] 2.5 3.0 3.5 4.0 4.5 5.0
Vektor Logika
25
akan menghasilkan suatu vektor yang panjangnya sam dengan vektor x dimana nilai
elemennya merupakan nilai BOOLEAN dari hasil perbandingan nilai setiap elemen di
x, dimana jika nilai elemen x < 13 maka bernilai TRUE selain itu bernilai FALSE.
Sehingga nilai vektor temp adalah:
> temp
[1] FALSE TRUE FALSE FALSE FALSE
Operator logika yang ada di R adalah <, <=, >, >=, == untuk persamaan eksak
dan != untuk pertidaksamaan. Jika c1 dan c2 adalah ekspresi logika, maka c1&c2
adalah irisan keduanya, c1|c2 adalah gabungan keduanya dan !c1 adalah
negasi(atau ingkaran) dari c1
Vektor logika dapat digunakan pada operator aritmatik, dimana nilai FALSE
dinyatakan sebagai 0 dan TRUE sebagai 1. Tetapi juga vektor logika dengan nilai
numeriknya tidak ekivalen.
Missing value
Dalam beberapa kasus dijumpai adanya komponen yang tidak lengkap dari suatu
vektor. Nilai atau elemennya menjadi “not available” atau “missing value”, dan untuk
alasan statistika, biasanya digantikan dengan nilai khusus NA. Umumnya dalam
setiap operasi NA akan menjadi NA. Motivasinya adalah, jika spesifikasi suatu
operasi tidak lengkap, maka hasilnya tidak diketahui dan oleh karenanya menjadi “not
available”.
Sebagai contoh, fungsi is.na(x) memberikan vektor logika yang mempunyai
panjang yang sama dengan x dengan nilai TRUE jika dan hanya jika elemen yang
berkorespondensi dalam x adalah NA.
Maksud dari hasil diatas, pertama mendefinisikan vektor c dengan elemen vector 1,
2, 3, NA. Kemudian membentuk vector ind berupa nilai logika dari setiap
elemen c dengan kondisi is.na(z), yaitu apabila elemen di c berupa NA maka
bernilai TRUE, selain itu bernilai FALSE.
Terkadang pada operasi perhitungan juga akan dijumpai hasil NaN (Not a Number)
untuk kalkulasi yang tidak mempunyai nilai, misal
> 0/0
[1] NaN
> Inf – Inf
[1] NaN
(Ket: Inf = Infinity (tak berhingga ∞).
26
Vektor karakter
Vektor ini sering digunakan dalam R, misalkan dalam memberikan label suatu plot.
Vektor ini menggunakan tanda petik dua (“) atau tanda petik satu (‘) untuk string
karakter, dan biasanya di print dalam petik dua (“) (kadang tanpa tanda petik).
Sebagai contoh
[1] "X1" "Y2" "X3" "Y4" "X5" "Y6" "X7" "Y8" "X9" "Y10"
Entitas dalam R dikenal sebagai objek. Vektor logika, vektor numeric, vektor karakter
adalah suatu objek. Operasi pada objek harus mempunyai mode (atau sifat/property)
objek yang sama, tanpa kesamaan tersebut maka operasi akan mengalami kesalahan
(error). Singkatnya, nilai vektor semuanya harus mempunyai mode yang sama.
Atribut (attribute)
> notebook
akan dicetak dalam bentuk data frame, yang mirip dengan tampilan matriks, dimana
> class(notebook)
27
IV.3. Faktor terurut dan tidak terurut
Sebagai contoh, misalkan terdapat sample 15 akuntan pajak dari beberapa provinsi di
pulau jawa, yaitu: 1 dari Banten (btn), 4 dari Jakarta (jkt), 3 dari Jawa Barat (jabar), 3
dari Jawa Tengah (jateng), 2 dari Yogyakarta (diy) dan 2 dari Jawa Timur (jatim).
Vektor akuntan dinyatakan sebagai berikut:
> prov <- c("btn", "btn", "btn", "dki", "dki","dki", "dki", "jabar",
"jabar", "jabar", "jateng", "jateng", "jateng",
"diy","diy", "jatim", "jatim")
Fungsi print() menangani factor dengan cara yang sedikit berbeda dari objek lain:
> provf
[1] btn btn btn dki dki dki dki jabar jabar jabar
[11] jateng jateng jateng diy diy jatim jatim
Levels: btn diy dki jabar jateng jatim
> levels(provf)
Fungsi tapply()
> incomes <- c(50, 82, 75, 80, 60, 61, 64, 60, 60, 75, 89, 96, 68,
89, 96, 93, 78)
Untuk menghitung nilai mean sample pendapatan untuk setiap provinsi, kita gunakan
fungsi tapply():
28
Selain itu kita juga dapat mendefinisikan fungsi sendiri di R. Seperti berikut ini
merupakan pendefinisian fungsi standard error (stderr):
Faktor terurut
Level-level dari faktor-faktor disimpan secara terurut alfabetis, atau dalam urutan
dimana faktor dispesifikasikan secara eksplisit. Terkadang level akan memiliki suatu
urutan yang sesuai dengan yang diinginkan untuk merekam data yang kemudian
digunakan untuk analisis statistik. Fungsi ordered() membentuk factor terurut
tetapi identik dengan fungsi faktor(). Pada kebanyakan penggunaan, yang
hanya menjadi perbedaan antara faktor terurut dengan tidak terurut adalah
pembentukan urutan level. Tetapi hal ini berbeda dengan pembentukan dalam model
pencocokan linear.
IV.4.1 Array
Suatu array adalah koleksi beragam model subscript data entri, misalkan numerik. R
memiliki fasilitas untuk pembuatan dan penanganan array, dan khususnya matriks.
Dimensi vektor adalah vektor bilangan bulat non-negatif. Jika panjang vektor tersebut
k maka array merupakan berdimensi k. Sebagai contoh, matrik adalah array
berdimensi 2. Dimensi adalah indeks dari satu hingga nilau yang diberikan dalam
dimensi vektor. Suatu vektor dapat digunakan di R sebagai suatu array jika hanya
memiliki dimensi sama dengan atribut dim nya. Misalkan suatu vektor z merupakan
vektor yang terdiri dari 1500 elemen. Perintah
Memberikan ke vektor nilai atribut dim yang menyatakan vektor tersebut merupakan
array dengan dimensi 3x5x100.
R memiliki fungsi yang dapat mempermudah penulisan vektor yakni matrix() dan
array().
Contoh, jika array berdimensi vektor c(3, 4, 3) maka array tersebut mempunyai
3 x 4 x 3 =36 elemen.
29
IV.4.2 Indeks matriks
Suatu matriks dapat digunakan dengan indeks tunggal untuk memberukan nilai untuk
koleksi elemen yang tidak beraturan dalam array tersebut, atau untuk mengekstraksi
koleksi yang tidak beraturan sebagai suatu vektor.
Contoh yang jelas adalah suatu matriks. Dalam hal indeks ganda suatu array, suatu
indeks matriks dapat terdiri dari dua kolom dan banyak baris sesuai dengan yang
diinginkan. Entri dalam indeks matriks adalah indeks baris dan kolom untuk array
berindeks ganda. Misalkan kita memilik array X berdimensi 4x5 dan untuk
mendapatkan array X tersebut dapat melakukan hal sebagai berikut:
− Ekstrak elemen X[1,3], X[2,2] dan X[3,1] sebagai suatu struktur
vektor, dan
− Menggantikan entri-entri pada indeks tersebut dengan 0 dalam array X
Dalam kasus ini, diperlukan suatu array bersubscript 3x2 seperti contoh berikut ini:
> x
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 13 17
[2,] 2 6 10 14 18
[3,] 3 7 11 15 19
[4,] 4 8 12 16 20
> i
[,1] [,2]
[1,] 1 3
[2,] 2 2
[3,] 3 1
> x
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 0 13 17
[2,] 2 0 10 14 18
[3,] 0 7 11 15 19
[4,] 4 8 12 16 20
30
Indeks negatif tidak diperbolehkan dalam indeks matriks. Nilai 0 dalam indeks
matriks akan diabaikan, sedangkan nilai NA akan menghasilkan NA.
Selain menggunakan atribut dim (dimension), sebuah vector dapat juga dibentuk
dengan menggunakan fungsi array(), dengan bentuk umum sebagai berikut:
> Z <- array(data_vector, dim_vector)
Sebagai contoh, jika vektor h mempunyai 24 atau lebih sedikit elemen, maka dapat
dituliskan dengan cara seperti berikut:
However if h is shorter than 24, its values are recycled from the beginning again to make
it up to size 24
Tetapi jika h lebih pendek dari 24, maka nilainya digunakan (diputar) kembali dari
depan hingga ukurannya menjadi 24.
Dalam hal indeks, dim(Z) menyatakan dimensi vector c(3,4,2) dan Z[1:24]
menyatakan data vektor seperti h di atas, dan Z[] dengan subscript hampa atau Z
tanpa subscript untuk menyatakan array keseluruhan sebagai array.
Outer product merupakan salah satu operasi yang penting dalam array. Jika a dan b
dua array numeric, outer product dari array tersebut adalah sebuah array dengan
dimensi dan data dari array a dan b sesuai dengan ketentuan perkalian matriks.
Operator outer product berbentuk %o% . Contoh:
Sebagai alternative:
Fungsi perkalian dapat digantikan oleh sembarang fungsi dengan dua variabel.
Sebagai contoh jika akan menghitung fungsi f(x,y) = cos(y) = (1 + x2)
pada grid nilai vektor sumbu x dan y di R, maka dapat dilakukan sebagai berikut:
31
Secara khusus, outer product dua vector adalah array dengan subscript ganda (yaitu sebuah
matriks dengan rang paling besar 1). Operator outer product bersifat non komutatif.
Contoh: Perhitungan nilai determinan matriks berdigit tunggal berukuran 2x2. [a,
b; c, d] dimana setiap elemen adalah integer non negative dalam range 0, 1,
;..., 9. Permasalahannya adalah bagaimana menghitung determinan ad-bc, dari
semua kemungkinan matriks dalam bentuk yang ditentukan tersebut serta
menunjukkan frekuensi kemunculan setiap nilai sebagai plot densitas tinggi (high
density). Untuk mendapatkan probabilitas distribusi determinan jika setiap digit
dipilih secara bebas dan acak secara uniform, maka digunakan fungsi outer()
sebanyak dua kali seperti berikut:
> d <- outer(0:9, 0:9)
> fr <- table(outer(d, d, "-"))
> plot(as.numeric(names(fr)), fr, type="h",xlab="Determinan",
ylab="Frekuensi")
Catatan: konversi dari atribut names dari table frekuensi fr ke numeric untuk mendapatkan
range nilai determinan.
32
IV.4.5 Array Transpose
Fungsi aperm(a, perm) digunakan untuk permutasi array a. Argumen perm
adalah permutasi bilangan bulat {1, ..., k}, dimana k adalah banyaknya
subscripts dalam a. Hasil fungsi tersebut adalah array yang berukuran sama dengan a
namun dengan dimensi yang sebelumya diberikan oleh perm[j] menjadi dimensi
baru yakni dimensi ke j.
Cara paling mudah, yakni dengan menganggap operasi tersebut sebagai transposisi
matrik. Jika A adalah matrik, maka B (sebagai permutasi A) dituliskan sebagai
beirkut:
Perkalian matrik
> A * B
> A %*% B
matrik dengan perkalian matriks (matrix product). Jika x adalah vektor, maka
Fungsi diag() mempunyai arti yang tergantung pada argumennya. Untuk vektor v,
maka diag(v), berarti s diagonal matrik v.
Untuk matrik M, diag(M), berarti matrikx yang merupakan diagonal utama dari
matrik M. Konvensi pengertian tersebut serupa juga dalam software Matlab.
33
Persamaan linier dan inverse matrik
R mempunyai fasilitas untuk mencari pemecahan persamaan linier matriks dan invers
matrik.
Dalam aljabar linier, secara formal x = A-1 b dimana A-1 menyatakan inverse A,
yang dapat dihitung dengan solve(A) tetapi jarang digunakan. Secara nukerik,
keduanya tidak efisien dan berpotensi tidak stabil untuk menghitung
Dalam R, fungsi eigen(Sm) digunakan untuk menghitung nilai eigen dan vektor
eigen suatu matrik simetris Sm. Hasil dari fungsi ini adalah daftar/list dua komponen
dengan nama values (nilai eigen) dan vectors (vektor eigen).
dimana menunjukkan daftar objek ev. Maka ev$val adalah vektor dari nilai eigen
matrik simeteris Sm dan ev$vec adalah matrik yang berkoresponden vektor eigen
Jika kita hanya akan mencari nilai eigen, maka dapat tuliskan perintah sebagai
berikut:
objek evals menunjukkan vektor dari nilai eigen dan komponen kedua (eigen
vector) diabaikan.
> eigen(Sm)
34
Saran: Untuk matrik yang berukuran besar, lebih baik hindari perhitungan vektor
eigen.
akan menghitung proyeksi orthogonal y pada range X, fit menunjukkan proyeksi pada
orthogonal komplemen dan b sebagai vektor koefisien untuk proyeksi.
Dalam hal ini, tidak diasumsikan bahwa X mempunyai rank kolom yang lengkap.
Masalah redudansi akan ditemukan dan dihilangkan pada saat terdeteksi.
35
Misal X1 dan X2 mempunyai baris dengan jumlah yang sama. Untuk
mengkombinasikannya terhadapa kolom ke dalam matrik x, maka dituliskan
Hasil cbind() dan rbind() adalah matrik. Oleh karena itu cbind() dan
rbind()adalah cara yang paling mudah untuk memperlakukan vektor x sebagai
matriks baris atau matrik kolom.
Perlu diingat kembali, karena faktor mendefinisikan suatu partisi ke dalam bentuk
kelompok (grup), maka secara similar faktor juga mendefinisikan klasifikasi silang
dua arah, dan seterusnya.
Fungsi table() digunakan untuk menghitung tabel frekuensi dari faktor dengan
panjang yang sama. Jika terdapat k faktor argument, akan menghasilkan frekuensi
berbentuk array yang berukuran k (k –arah).
Sebagai contoh, anggap, dengan menggunakan contoh pada data mengenai provinsi di
pulau jawa, faktor provf akan mengatur menjadi kode-kode untuk setiap provinsi.
Penulisan pernyataan ini adalah:
> provfr <- table(provf)
memebentuk provfr sebagai table frekuensi setiap provinsi (prov) dalam sample
dengan output seperti berikut:
Frekuensi akan diurutkan dan diberi label dengan atribut level suatu faktor.
Penulisannya sebagai berikut:
> provfr <- tapply(provf, provf, length)
Anggap, incomef adalah faktor yang membentuk “bagian/ kelas dari pendapatan
(income)” untuk setiap entri dalam data, sebagai contoh kita dapat menggunakan
fungsi cut()
> table(incomef,provf)
provf
incomef btn diy dki jabar jateng jatim
(45,55] 1 0 0 0 0 0
(55,65] 0 0 3 2 0 0
(65,75] 1 0 0 1 1 0
(75,85] 1 0 1 0 0 1
(85,95] 0 1 0 0 1 1
(95,105] 0 1 0 0 1 0
36
IV.5. List dan Frame Data
List (daftar) dalam R adalah objek yang terdiri dari koleksi terurut suatu objek yang
disebut sebagai komponen.
Suatu komponen dalam list tidak harus berjenis atau mode yang sama. Sebagai
contoh, suatu list dapat terdiri dari vektor numerik, nilai logika, matriks, vektor
komplek, array karakter, fungsi, dan lain lain.
Penulisan berikut adalah contoh membuat suatu list:
> Lst
$name
[1] "Fred"
$wife
[1] "Mary"
$no.children
[1] 3
$child.ages
[1] 4 7 9
List (daftar) baru dapat dibentuk dari objek yang sudah ada dengan menggunakan
fungsi list(). Cara penulisannya adalah sebagai berikut:
Akan membentuk list Lst dengan m komponen dan menggunakan object_1, ...,
object_m serta memberikan nama masing-masing dengan argument names.
Frame Data adalah list dengan kelas “data.frame”. Sebagai catatan, ada emapat hal
pembatasan suatu list diubah menjadi data frame, yakni:
− Komponennya harus berupa vektor (numeric, karakter atau logika), faktor,
matriks numeric, list, atau data frame lainnya.
− Matriks, list, dan data frame menyediakan banyak variable untuk data frame
sebanyak kolom, elemen atau variable yang dimiliki/didefinisikan
sebelumnya.
37
− Struktur vektor yang ditampilkan dalam bentuk variable suatu data frame
harus memiliki panjang yang sama, struktur matriknya harus mempunyai
ukuran baris yang sama.
Fungsi yang digunakan untuk membuat data frame adalah data.frame. Seperti
contoh berikut:
Fungsi attach() digunakan untuk memepermudah penulisan dalam list dan data
frame, seperti penggunaan notasi $ pada penulisan akuntan$provf .
> attach(lentils)
akan menempatkan data frame kedalam jalur pencarian pada posisi 2, dan
menyatakan bahwa tidak ada variable u, v atau w pada posisi 1. u, v dan w
adalah variable dari frame dalam bentuk awal yang sudah ditentukan sebelumnya.
tidak menggantikan komponen u dari data frame, namun hanya menutupinya dengan
variable u lainnya dalam direktori kerja (working directory) pada posisi 1 pada jalur
pencarian.
Sedangkan untuk membuat perubahan atau pergantian suatu data frame yang
permanent, cara yang sederhana yang dapat dilakukan dengan mengurutkan ulang
(resort) pada notasi $:
Namun bagaimanapun, nilai baru suatu komponen u tidak tampak (visible) sampai
data frame di-detach dan di-attach lagi. Untuk men-detach-nya dengan
menuliskan fungsi
> detach()
38
Sebagai contoh, untuk men-detach data frame lentils, dengan menuliskan
> detach(lentils)
Berikut adalah cara bekerja dengan data frame dalam direktori kerja yang sama:
Suatu objek data yang berukuran besar, biasanya dibaca sebagai nilai dari file
eksternal (selain dari data R yang sedang kita kerjakan). Fasilitas input data di R,
sangat mudah , sebgai contoh fungsi scan() yang dapat langsung kita panggil
(fungsi scan(), fungsi yang primitive), sedangkan untuk data yang besar, dengan
menggunakan fungsi read.table().
Fungsi read.table()
Untuk langsung membaca data frame dari suatu file eksternal yang normalnya
mempunyai bentuk khusus:
• Baris pertama file terdiri dari nama setiap variabel dalam data frame
• Setiap penambahan baris pada suatu file mempunyai label baris dan nilai
untuk setiap variable pada baris pertama.
Jika suatu file mempunyai item yang lebih sedikit pada baris pertamanya dibanding
baris kedua, harus dilakukan suatu perubahan. Maka dalam baris pertama yang lebih
sedikit akan dibaca sebagai data frame yang terlihat pada tabel berikut ini:
39
Input file form with names and row labels:
Ket: 01,02,03,04,05, ….. adalah label untuk setiap baris dalam data frame
Dengan item numerik yang sudah ditetapkan secara default (kecuali label baris) akan
dibaca sebagai variabel numerik dan variabel non numerik, seperti pada Cent.heat
yang dianggap sebagai factor, dan jika diperlukan, hal tersebut dapat diubah.
Kita juga dapat menghilangkan label baris untuk data frame dengan menuliskan
header=TRUE digunakan untuk mengatur tabel data frame dalam bentuk default,
sehingga label baris tidak akaan tampak, seperti dalam tabel berikut:
Fungsi scan()
Apabila akan membaca beberapa vektor data dengan panjang yang sama secara
parallel (anggap ada tiga vektor, yang pertama dalam bentuk karakter dan sisanya
dalam bentuk numeric, dan filenya adalah input.dat), maka pertama dapat
menggunakan fungsi scan() untuk membaca ketiga vektor dalam bentuk list,
dengan menuliskan:
Pada fungsi scan tersebut, argumen kedua adalah struktur list dummy, yang
menetapkan mode ketiga vektor dapat dibaca. Hasilnya adalah objek inp yang
40
merupakan list yang komponennya adalah ketiga vektor tersebut. Untuk memisahkan
item data menjadii tiga vektor terpisah, kita tuliskan:
Kita juga dapat memberikan nama komponen pada daftar dummy, (dalam kasus ini)
digunakan untuk mengakses vektor yang ada di dalamnya. Sebagai contoh:
Jika anda ingin mengakses variabel secara terpisah, hal itu dapat dilakukan dengan
re-assign variabel pada data frame, kita tuliskan:
Jika argument kedua merupakan nilai tunggal atau tidak ada dalam list, maka semua
komponen dalam vektor harus mempunyai mode yang sama sebagai nilai dummy.
Ketika anda meng-instal R, maka anda mempunyai sekitar 100 kumpulan data
sebagai contoh atau latihan ( dalam paket dataset) . Untuk melihat kumpulan data
tersebut, tuliskan:
> data()
41
Gambar 4.2: Dataset default dalam R
42
Gambar 4.3: Daftar dataset dalam R
Untuk menggunakan salah satu data built-in anda dapat menggunakan fungsi
data(). Sebagai contoh, untuk menggunakan data AirPassengers, tuliskan:
> data(AirPassengers)
> list(AirPassengers)
[[1]]
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
1949 112 118 132 129 121 135 148 148 136 119 104 118
1950 115 126 141 135 125 149 170 170 158 133 114 140
1951 145 150 178 163 172 178 199 199 184 162 146 166
1952 171 180 193 181 183 218 230 242 209 191 172 194
1953 196 196 236 235 229 243 264 272 237 211 180 201
1954 204 188 235 227 234 264 302 293 259 229 203 229
1955 242 233 267 269 270 315 364 347 312 274 237 278
1956 284 277 317 313 318 374 413 405 355 306 271 306
1957 315 301 356 348 355 422 465 467 404 347 305 336
1958 340 318 362 348 363 435 491 505 404 359 310 337
1959 360 342 406 396 420 472 548 559 463 407 362 405
1960 417 391 419 461 472 535 622 606 508 461 390 432
43
Loading data dari paket R lainnya
Selain dari dataset yang built-in, kita dapat menggunakan data dari paket R lainnya
(dapt di download di website resmi R).
Sebagai contoh:
> data(package="rpart")
> data(Puromycin, package="datasets")
baris pertama akan memanggil (kumpulan) data dari paket rpart, pada baris kedua
akan memanggil data Puromycin dari paket datasets.
Menyunting/edit data
Seperti software pengolahan & analisis data lainnya, R menyediakan fasilitas editor
data mirip tampilan spreadsheet dengan menggunakan fungsi edit() yang
penulisannya sebagai berikut:
akan mengedit data sebelumnya xold menjadi data (objek) baru xnew.
Sebagai contoh, dengan menggunakan data built-in pada dataset , yakni
AirPassenger , penulisannya:
> data(AirPassengers)
> xnew<-edit(AirPassengers)
Ket: Pemberian nama objek data yang diedit adalah bebas (bergantung kebutuhan
dan kemudahan pengguna).
44
Untuk pengeditan data asli, dapat digunakan fungsi fix(). Misalkan:
Sebagai contoh, akan digunakan data faithful untuk mengedit dengan model
grid, dengan penulisan sebagai berikut:
> attach(faithful)
> xnew <-fix(faithful)
45
Pengeditan data dapat dilakukan dengan penulisan statement R seperti di atas, atau
dengan menggunakan menu window: Edit -> Data editor …-> Masukan nama data
(misal data faithful) -> OK untuk melanjutkan edit data. Tahapan tersebut
ditunjukkan pada gambar berikut:
4. Untuk membuat matrik kuadrat berukuran 2x2, dengan semua elemennya adalah
0, maka perintah R yang digunakan adalah ?
5. Jika A adalah sebuah matrik, dengan berukuran 2x3 dimana elemen secara terurut
mulai array [1,1] = 1 , [2,1] = 2, …, [2,3] = 6. Maka perintah R yang digunakan
untuk menuliskannya adalah ?
46
6. Jika K dan L adalah matrik kuadrat 2x2 dengan semua elemennya masing-masing
adalah 1, dan 2. Untuk menggabungkan menjadi matrik berukuran 4x2 (ukuran 4
baris, 2 kolom) seperti matrik di bawah ini, diperlukan perintah R?
7. Dengan dua matrik yang sama pada soal no. 6, tuliskan perintah R yang
menggabungkan keduanya menjadi matrik berukuran 2x4 .
8. Untuk matrik yang dihasilkan dari perhitungan soal no. 6 (misal matrik X) dan
soal no. 7 (misal matrik Y), maka perintah R yang digunakan untuk mengalikan
matrik X dan Y adalah ?
9. Lakukan perintah soal no. 8, namun untuk perkalian matrik Y dan X, lihat apakah
ada perbedaan antara cara perkalian kedua matrik tersebut pada soal no. 8 dan soal
no.9 ?
10. Misalkan, buka data sets yang terintegrasi pada R anda, kemudian edit lah data
CO2 dan kemudian ganti menjadi objek dengan nama baru yakni karbondioksida,
tuliskan perintah R yang digunakan!
47