200 likes | 437 Views
ALGORITME & PEMROGRAMAN. Abdul Kudus, SSi ., MSi ., PhD. Senin, 6.30 – 9.00 Rabu, 8.00 – 10.00 Rabu, 10.00 – 12.00 Senin, 9.00 – 12.00 Selasa, 15.00 – 17.30. Vektor Huruf ( Character / String Vector ).
E N D
ALGORITME & PEMROGRAMAN Abdul Kudus, SSi., MSi., PhD. Senin, 6.30 – 9.00 Rabu, 8.00 – 10.00 Rabu, 10.00 – 12.00 Senin, 9.00 – 12.00 Selasa, 15.00 – 17.30
VektorHuruf (Character / String Vector ) Skalardanvektorbisajugaberisikata (kalimat) atauhuruf. Semuaunsurdarivektorharuslahmempunyaijenis yang sama. > colors <- c("red", "yellow", "blue") > more.colors <- c(colors, "green", "magenta", "cyan") > # tambahkanbbrpunsurbaru > z <- c("red", "green", 1) #cobacampurbedajenis > more.colors [1] "red“ "yellow“ "blue” "green" "magenta" "cyan" > z [1] "red“ "green" "1"
Membuat Data (Dataset) Langkah pertama dalam melakukan analisis data adalah membuat dataset yang berisi informasi yang akan dikaji, dimana format data tsb sesuai dengan keinginan kita. Hal ini dalam R dilakukan dalam: • Membuat pilihan struktur data utk data kita • Memasukkan atau mengimpor data ke dalam struktur yg sudah dipilih
Memahami dataset Sebuah dataset biasanya berbentuk seperti tabel dimana baris-barisnya menyatakan observasi (pengamatan/individu) dan kolom-kolomnya merupakan variabel. Contoh: data pasien Struktur data dalam R: 1) skalar, 2) vektor, 3) matriks, 4) array, 5) dataframe dan 6) list. Jenis (tipe) atau mode data dalam R: 1) numerik, 2) karakter (abyad), 3) logika (BENAR/SALAH), 4) kompleks (bilangan imajiner) dan 5) mentah (byte)
Vektor Vektor adalah array berdimensi satu yang bisa menampung data jenis numerik, karakter atau logika. Perintah combine c() digunakan utk membuat vektor. # vektor numerik a <- c(1, 2, 5, 3, 6, -2, 4) # vektor karakter b <- c("satu", "dua", "tiga") # vektor logika c <- c(TRUE, TRUE, TRUE, FALSE, TRUE, FALSE) Catatan: data dalam sebuah vektor hanya diperbolehkan satu tipe saja (numerik, karakter atau logika). Tidak boleh mencampur tipe berbeda.
Skalar Skalar adalah vektor yg hanya mempunyai satu unsur. # skalar numerik f <- 3 # skalar karakter g <- “Indonesia” # skalar logika h <- TRUE Merujuk unsur dari suatu vektor adalah dengan menggunakan vektor numerik yang menunjukkan posisi yg dirujuknya dan ditulis dalam kurung siku. # merujuk unsur ke-2 dan ke-4 dari vektor a a[c(2,4)]
Matriks Matriks adalah array berdimensi dua yang unsur-unsurnya mempunyai tipe yang sama. Dibuat dengan perintah matrix yg mempunyai syntax umum. myymatrix <- matrix(vektor, nrow=r, ncol=c, byrow=nilai_logika, dimnames=list(vektor_karakter_namabaris, vektor_karakter_namakolom)) vektor : vektor berisi unsur-unsur dari matriks r : banyaknya baris c : banyaknya kolom byrow : menyatakan apakah matriks diisi baris per baris (byrow=TRUE) ataukah kolom per kolom (byrow=FALSE) dimnames: (opsional) berisi label baris dan kolom
> # vektor numerik > a <- c(1, 2, 5, 3, 6, -2, 4) > # vektor karakter > b <- c("satu", "dua", "tiga") > # vektor logika > c <- c(TRUE, TRUE, TRUE, FALSE, TRUE, FALSE) > # buat matriks 5 x 4 > y <- matrix(1:20, nrow=5, ncol=4) > y [,1] [,2] [,3] [,4] [1,] 1 6 11 16 [2,] 2 7 12 17 [3,] 3 8 13 18 [4,] 4 9 14 19 [5,] 5 10 15 20
> # buat matriks 2 x 2 dengan label baris dan kolomnya > # isi matriks baris per baris > sel <- c(1,26,24,68) > namabaris <- c("Baris1", "Baris2") > namakolom <- c("Kolom1", "Kolom2") > mymatrix1 <- matrix(sel, nrow=2, ncol=2, byrow=TRUE,dimnames=list(namabaris, namakolom)) > mymatrix1 Kolom1 Kolom2 Baris1 1 26 Baris2 24 68 > # kali ini matriks diisi kolom per kolom > mymatrix2 <- matrix(sel, nrow=2, ncol=2, byrow=FALSE, dimnames=list(namabaris, namakolom)) > mymatrix2 Kolom1 Kolom2 Baris1 1 24 Baris2 26 68
Kita bisa merujuk baris, kolom atau unsur dari suatu matriks dengan menggunakan subskrip dan kurung siku. X[i,] merujuk baris ke-i dari matriks X. X[,j] merujuk kolom ke-j dari matriks X. X[i,j] merujuk unsur ke-ij (baris ke-i, kolom ke-j). Jika ingin merujuk lebih dari satu baris atau kolom, subskripnya harus berupa vektor numerik. > x <- matrix(1:10, nrow=2) > x [,1] [,2] [,3] [,4] [,5] [1,] 1 3 5 7 9 [2,] 2 4 6 8 10 > # ambil baris ke-2 > x[2,] [1] 2 4 6 8 10
> # ambil kolom ke-2 > x[,2] [1] 3 4 > # ambil unsur ke-1,4 (baris ke-1, kolom ke-4) > x[1,4] [1] 7 > # ambil unsur-unsur pada baris ke-1, dan kolom ke-4 dan ke-5 > x[1, c(4,5)] [1] 7 9 Seperti vektor, matriks juga hanya berisi satu jenis data.
Array Array mempunyai dimensi lebih dari dua dan dibuat dgn perintah array. > a <- array(1:24, c(3, 4, 2)) > a , , 1 [,1] [,2] [,3] [,4] [1,] 1 4 7 10 [2,] 2 5 8 11 [3,] 3 6 9 12 , , 2 [,1] [,2] [,3] [,4] [1,] 13 16 19 22 [2,] 14 17 20 23 [3,] 15 18 21 24 2 1 13 16 19 22 14 17 20 23 15 18 21 24 1 2 3 1 4 7 10 2 5 8 11 3 6 9 12 1 2 3 4 Seperti vektor dan matriks, array juga hanya berisi satu jenis data.
Dataframe Dataframe lebih umum daripada matriks, karena kolom-kolomnya bisa berisi data dengan tipe yang berbeda (numerik, karakter, dll). Contoh data pasien yang terdiri atas tipe data numerik dan karakter. Dataframe dibuat dengan perintah dataframe sbb: mydata <- data.frame(kolom1, kolom2, kolom3,…) kolom1, kolom2, kolom3 dst : vektor dengan jenis apapun (karakter, numerik, logika dll.) > patientID <- c(1, 2, 3, 4) > age <- c(25, 34, 28, 52) > diabetes <- c("Type1", "Type2", "Type1", "Type1") > status <- c("Poor", "Improved", "Excellent", "Poor") > patientdata <- data.frame(patientID, age, diabetes, status) > patientdata patientID age diabetes status 1 1 25 Type1 Poor 2 2 34 Type2 Improved 3 3 28 Type1 Excellent 4 4 52 Type1 Poor
Banyak cara untuk merujuk unsur dari dataframe. Bisa menggunakan subskrip atau nama kolomnya sbb: > patientdata[1:2] patientID age 1 1 25 2 2 34 3 3 28 4 4 52 > patientdata[c("diabetes","status")] diabetes status 1 Type1 Poor 2 Type2 Improved 3 Type1 Excellent 4 Type1 Poor > patientdata$age [1] 25 34 28 52 notasi $ utk merujuk variabel tertentu
List List adalahstruktur data yang bisaberisilebihdarisatujenisdata (numerik, karakter dll) dan lebih dari satu struktur data (vektor dll) > # Contoh list berisi 4 komponen - > # string (karakter), vektor numerik, matriks, dan vektor karakter > g <- "List buatanku" > h <- c(25, 26, 18, 39) > j <- matrix(1:10, nrow=5) > k <- c("satu", "dua", "tiga") > mylist <- list(judul=g, umur=h, j, k)
> mylist $judul [1] "List buatanku" $umur [1] 25 26 18 39 [[3]] [,1] [,2] [1,] 1 6 [2,] 2 7 [3,] 3 8 [4,] 4 9 [5,] 5 10 [[4]] [1] "satu" "dua" "tiga" Kita bisa merujuk unsur dari suatu list dengan nomor komponennya atau nama komponennya di dalam doble kurung siku. > mylist[[2]] [1] 25 26 18 39 > mylist[["umur"]] [1] 25 26 18 39 sama
Catatan: untuk mengisi data missing (hilang) bisa digunakan NA Contoh panjang <- c(75,85,91.6,95,NA,105.5,106) Beberapa Perintah Dasar R sum jumlah mean rata-rata max terbesar min terkecil median tengah-tengah var variansi (keberagaman) sd standar deviasi (var) Contoh Hati-hati jika vektor datanya berisi data hilang (NA) !! > a <- c(1, 2, 5, 3, 6, -2, 4) > sum(a) [1] 19 > sum(panjang) [1] NA > sum(panjang,na.rm=TRUE) [1] 558.1
Perintah cbind Untuk mengikat / menggandengkan vektor-vektor dalam kolom per kolom menjadi matriks > vektor1 <- c(1, 2, 3,4) > vektor2 <- c(10,20,30,40) > vektor3 <- c(100,200,300,400) > cbind(vektor1,vektor2,vektor3) vektor1 vektor2 vektor3 [1,] 1 10 100 [2,] 2 20 200 [3,] 3 30 300 [4,] 4 40 400 > hasil <- cbind(vektor1,vektor2,vektor3) > class(hasil) [1] "matrix"
Perintah dim Untuk mengetahui dimensi dari obyek > dim(hasil) [1] 4 3 artinya 4 baris dan 3 kolom Perintah nrow Untuk mengetahui banyaknya baris dari obyek Perintah ncol Untuk mengetahui banyaknya kolom dari obyek Perintah length Untuk mengetahui banyaknya unsur dari obyek > nrow(hasil) [1] 4 > ncol(hasil) [1] 3 > length(hasil) [1] 12