26
STK372 KOMPUTASI STATISTIK II PEMROGRAMAN DALAM R © Agus Mohamad Soleh

PEMROGRAMAN DALAM R - stat.ipb.ac.idstat.ipb.ac.id/en/uploads/AMS/STK372-Komputasi Statistik/2016...Merupakan tipe khusus vektor dengan elemen data kategori Faktor diprint tanpa diapit

  • Upload
    vankien

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

STK372 KOMPUTASI STATISTIK II

PEMROGRAMAN DALAM R

© Agus Mohamad Soleh

Ruang Lingkup Materi

Pengantar Pemrograman R

Fungsi yang Tersedia

Pemrograman Berorientasi Objek

Pemrograman Grafik

Package dalam R

Pemrograman Lanjutan

Referensi

Braun, dan Murdoch. 2008. A First Course in Statistical

Computing with R.

Norman Matloff. 2011. The Art of R Programming. No

Starch Press, Inc. San Francisco, CA 94103

Lawrence, M. dan J. Verzani. 2012. Programming Graphical

User Interfaces in R.

OVERVIEW OBJEK DATA S

© Agus Mohamad Soleh

MODE OBJEK DATA

Numeric

Contoh: 12, -2.3, 1.2e-2

Complex

Contoh: 1.2e6+2i

Character

Contoh: ‘ipb’, “statistika”

Logical

Contoh: T, F, TRUE, FALSE

OBJEK DATA

Objek data dasar dalam bahasa S:

Vektor

Matriks

Array

Factor

List

Data Frame

OBJEK VEKTOR

Vektor merupakan tipe sederhana dari objek data dalam S

dalam hampir digunakan oleh semua objek data.

Semua elemen memiliki mode yang sama.

Akses:

Jika x adalah objek vektor, maka akses terhadap elemen ke-i

dilakukan melalui x[i]

Index i berupa bilangan integer atau nama dari index atau

elemen logical dari objek

OBJEK MATRIKS

Matriks merupakan objek data yang banyak digunakan dalam

analisis statistika

Matriks pada bahasa S umumnya dibuat melalui vektor.

Akes:

Jika mat adalah objek matriks, maka akses terhadap:

individual element : mat[m,n] atau mat[i]

baris : mat[m,]

kolom : mat[,n]

m, n dan i adalah bilangan integer

OBJEK ARRAY

Matriks merupakan bentuk khusus dari Array. Perbedaan

diantara keduanya adalah dimensinya.

Matriks adalah Array berdimensi dua.

Akses:

Akses terhadap objek array, mirip dengan matriks

menggunakan operator []

OBJEK FACTOR

Merupakan tipe khusus vektor dengan elemen data kategori

Faktor diprint tanpa diapit oleh quotes “” --> memiliki

metode print khusus

Pada dasarnya faktor adalah vektor yang mengindikasikan

taraf (level) dari peubah kategori

OBJEK LIST

List merupakan objek data yang elemen didalamnya boleh

memiliki mode yang berbeda.

Umumnya list digunakan untuk menyimpan hasil suatu fungsi

Perintah unlist akan membuat list menjadi vektor.

Akses:

Akses terhadap list dapat dilakukan melalui beberapa cara.

By name : menggunakan operator $

By position : menggunakan operator [[]]

Sebagai vektor : menggunakan operator []

OBJEK DATA FRAME

Merupakan tipe khusus list yang digunakan untuk menyimpan

data dari berbagai macam tipe dalam bentuk matriks.

Akses:

Akses terhadap data frame berlaku seperti matriks dan list

matriks : dataolah[m,n]

list : dataolah$status atau dataolah[[2]]

Akses lain sebagai vektor :

attach(namadataframe)

detach(namadataframe)

Aritmetika

Aritmetika berhubungan dengan:

Operand

Operator

Fungsi

Aritmetika

Operator:

Aritmetika

Fungsi-fungsi standar yang sering digunakan

Fungsi konversi ke Integer : round, trunc, floor, ceiling

Fungsi umum : abs, sign, log, log10, sqrt, exp, sin, cos, tan,

asin, acos, atan, sinh, cosh, tanh

Fungsi jumlah dan product dari vektor: sum, prod, cumsum,

cumprod

Fungsi Maksimum dan Minimum : max, min, cummax, cummin

Fungsi range(x) menghitung c(min(x) , max(x))

Fungsi untuk mengurutkan : sort

Fungsi untuk membalikan : rev

Struktur Kontrol

Eksekusi bersyarat

if (kondisi) ekspresi (T) [else ekspresi (F)]

ifelse(test, nilai jika T, nilai jika F)

Fungsi switch beberapa diantaranya akan lebih baik dibanding

menggunakan if tersarang.

Struktur Kontrol

Loops

for (objek in sekuens) ekspresi

while (condition) ekspresi

repeat ekspresi (untuk menghentikan gunakan perintah break)

Struktur Kontrol

Pada beberapa kasus loops sebaiknya dihindari→ Gunakan

perintah apply

menjalankan fungsi untuk suatu array

Syntax :

apply(array, margin, function, named arguments, …)

margin : adalah subscript untuk vektor yang akan dikenakan

fungsi

1 : baris, 2 : kolom, c(1,2) : baris dan kolom

named arguments : optional untuk argument dari fungsi

perintah lain yang sama : tapply, lapply, sapply

Fungsi di R

R telah menyiapkan banyak fungsi yang dapat dimanfaatkan

untuk:

Manajemen data dan Utilitas

Aritmetika

Statistik

Grafik

Berkembangnya metode statistika membutuhkan fungsi baru

Menciptakan Fungsi Sendiri

Fungsi yang tidak ada dalam bahasa S dapat diciptakan

sendiri.

Syntax :

namafungsi <- function(argumen) isifungsi

Teladan:

std.dev <- function (x) sqrt(var(x))

Komentar bisa dituliskan menggunakan #

Menciptakan Fungsi Sendiri

Output dari fungsi adalah objek→ umumnya menggunakan

objek list

Untuk memanggil fungsi :

namafungsi (arg1, arg2, ….)

Penanganan Kesalahan

Untuk menangani kesalahan dalam fungsi disediakan fungsi-

fungsi:

try

tryCatch

warnings

stop

Argumen Fungsi

Fungsi umumnya menggunakan argumen

Argumen fungsi dalam R dapat diberikan sebuah nilai default

Argumen dapat tak terhingga (menggunakan …)

Sebuah fungsi di dalam R dapat dijadikan sebagai argumen

Teladan

Membuat Fungsi untuk Melakukan Pengujian Hipotesis Nilai

Tengah untuk Dua Populasi dengan ragam sama.

Algoritma :

hitung masing-masing n

hitung galat baku

hitung statistik uji

hitung nilai-p

tetapkan keputusan penerimaan atau penolakan H0

AKHIR MATERI