ALGORITME & PEMROGRAMAN

20
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

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

Page 1: 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

Page 2: ALGORITME  & PEMROGRAMAN

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"

Page 3: ALGORITME  & PEMROGRAMAN

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

Page 4: ALGORITME  & PEMROGRAMAN

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)

Page 5: ALGORITME  & PEMROGRAMAN

Struktur Data

Page 6: ALGORITME  & PEMROGRAMAN

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.

Page 7: ALGORITME  & PEMROGRAMAN

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)]

Page 8: ALGORITME  & PEMROGRAMAN

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

Page 9: ALGORITME  & PEMROGRAMAN

> # 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

Page 10: ALGORITME  & PEMROGRAMAN

> # 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

Page 11: ALGORITME  & PEMROGRAMAN

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

Page 12: ALGORITME  & PEMROGRAMAN

> # 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.

Page 13: ALGORITME  & PEMROGRAMAN

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.

Page 14: ALGORITME  & PEMROGRAMAN

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

Page 15: ALGORITME  & PEMROGRAMAN

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

Page 16: ALGORITME  & PEMROGRAMAN

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)

Page 17: ALGORITME  & PEMROGRAMAN

> 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

Page 18: ALGORITME  & PEMROGRAMAN

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

Page 19: ALGORITME  & PEMROGRAMAN

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"

Page 20: ALGORITME  & PEMROGRAMAN

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