ALGORITME & PEMROGRAMAN

Post on 12-Jan-2016

64 views 0 download

description

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 ). - PowerPoint PPT Presentation

Transcript of ALGORITME & PEMROGRAMAN

ALGORITME & PEMROGRAMAN

Abdul Kudus, SSi., MSi., PhD.Senin, 6.30 – 9.00

Rabu, 8.00 – 10.00Rabu, 10.00 – 12.00Senin, 9.00 – 12.00

Selasa, 15.00 – 17.30

Vektor Huruf (Character / String Vector )

Skalar dan vektor bisa juga berisi kata (kalimat) atau huruf. Semua unsur dari vektor haruslah mempunyai jenis yang sama.> colors <- c("red", "yellow", "blue")> more.colors <- c(colors, "green", "magenta", "cyan")> # tambahkan bbrp unsur baru> z <- c("red", "green", 1) #coba campur beda jenis> 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 datasetSebuah 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)

Struktur Data

Vektor adalah array berdimensi satu yang bisa menampung data jenis numerik, karakter atau logika. Perintah combine c() digunakan utk membuat vektor.

Vektor

# vektor numerika <- c(1, 2, 5, 3, 6, -2, 4)# vektor karakter b <- c("satu", "dua", "tiga")# vektor logikac <- 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 adalah vektor yg hanya mempunyai satu unsur. Skalar

# skalar numerikf <- 3# skalar karakter g <- “Indonesia”# skalar logikah <- 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 aa[c(2,4)]

Matriks adalah array berdimensi dua yang unsur-unsurnya mempunyai tipe yang sama. Dibuat dengan perintah matrix yg mempunyai syntax umum.

Matriks

myymatrix <- matrix(vektor, nrow=r, ncol=c, byrow=nilai_logika, dimnames=list(vektor_karakter_namabaris, vektor_karakter_namakolom))

vektor : vektor berisi unsur-unsur dari matriksr : banyaknya barisc : banyaknya kolombyrow : 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 Kolom2Baris1 1 26Baris2 24 68> # kali ini matriks diisi kolom per kolom> mymatrix2 <- matrix(sel, nrow=2, ncol=2, byrow=FALSE, dimnames=list(namabaris, namakolom))> mymatrix2 Kolom1 Kolom2Baris1 1 24Baris2 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 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

13 16 19 2214 17 20 2315 18 21 24

1 4 7 102 5 8 113 6 9 12

1 23

1 2 3 4

12

Array

Seperti vektor dan matriks, array juga hanya berisi satu jenis data.

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:

Dataframe

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 status1 1 25 Type1 Poor2 2 34 Type2 Improved3 3 28 Type1 Excellent4 4 52 Type1 Poor

Banyak cara untuk merujuk unsur dari dataframe. Bisa menggunakan subskrip atau nama kolomnya sbb:

> patientdata[1:2] patientID age1 1 252 2 343 3 284 4 52> patientdata[c("diabetes","status")] diabetes status1 Type1 Poor2 Type2 Improved3 Type1 Excellent4 Type1 Poor> patientdata$age[1] 25 34 28 52

notasi $ utk merujuk variabel tertentu

List

List adalah struktur data yang bisa berisi lebih dari satu jenis data (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

Beberapa Perintah Dasar Rsum jumlahmean rata-ratamax terbesarmin terkecilmedian tengah-tengahvar variansi (keberagaman)sd standar deviasi (var)

Catatan: untuk mengisi data missing (hilang) bisa digunakan NA Contoh

panjang <- c(75,85,91.6,95,NA,105.5,106)

Contoh> a <- c(1, 2, 5, 3, 6, -2, 4)> sum(a)[1] 19

Hati-hati jika vektor datanya berisi data hilang (NA) !!> 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 obyekPerintah length

Untuk mengetahui banyaknya unsur dari obyek> nrow(hasil)[1] 4> ncol(hasil)[1] 3> length(hasil)[1] 12