Universitas : Universitas Islam Negeri Maulana Malik Ibrahim Malang
Prodi : Tehnik Informatika
Operator relasi digunakan untuk membandingkan satu objek dengan objek lainnya. Operator yang disediakan R disajikan pada
Simbol Keterangan
“>” Lebih besar dari
“<” Lebih Kecil dari
“==” Sama dengan
“>=” Lebih besar sama dengan
“<=” Lebih kecil sama dengan
“!=” Tidak sama dengan
Berikut adalah penerapan operator pada tabel tersebut:
X <- 34
Y <- 35
# Operator >
x > y
##[1] FALSE
# Operator <
X < Y
##[1] TRUE
# Operator ==
x == y
##[1] FALSE
# Operator >=
x >= y
##[1] FALSE
# Operator <=
x <= y
##[1] TRUE
# Operator !=
x != y
##[1] TRUE
Operator logika hanya berlaku pada vektor dengan tipe logical, numeric, atau complex. Semua angka bernilai 1 akan dianggap bernilai logika TRUE. Operator logika yang disediakan R dapat dilihat pada
Simbol Keterangan
“&&” Operator logika AND ”
“!” Opeartor logika NOT
“&” Operator logika AND element wise ” ”
Penerapannya terdapat pada sintaks berikut:
v <- c(TRUE,TRUE, FALSE)
t <- c(FALSE,FALSE,FALSE)
# Operator &&
print(v&&t)
##[1] FALSE
# Operator ||
print(v||t)
##[1] TRUE
# Operator !
print(!v)
##[1] FALSE FALSE TRUE
# operator &
print(v&t)
##[1] FALSE FALSE FALSE
# Operator |
print(v|t)
##[1] TRUE TRUE FALSE
Variabel pada R dapat digunakan untuk menyimpan nilai. Sebagai contoh jalankan sintaks berikut:
#Harga sebuah lemon adalah 500 rupiah
lemon <- 500
# Atau
500 -> lemon
# dapat juga menggunakan tanda "="
lemon = 500
Penting!!!
# Menggunakan fungsi print()
print(lemon)
##[1] 500
# Atau
lemon
##[1] 500
Data pada R dapat dikelompokan berdasarkan beberapa tipe. Tipe data pada R disajikan pada
Tipe Data : Raw Contoh : Identik dengan “hello”
Keterangan : Segala jenis data yang di simpan sebagai raw bytes sintaks berikut adalah contoh dari tipe data R.Untuk mengetahui tipe data suatu objek kita dapat menggunakan perintah class()
# Logical
apel <- TRUE
class(apel)
##[1] “logical”
# Numeric
x <- 2.3
class(x)
##[1] “numeric”
# Integer
y <- 2L
class(y)
##[1] “integer”
# Compleks
z <- 5+2i
class(z)
##[1] “complex”
# string
w <- "saya"
class(w)
##[1] “character”# Raw
xy <- charToRaw("hello world")
class(xy)
#Raw xy <- charToRaw(“hello world”) class(xy)
Keenam jenis data tersebut disebut sebagai tipe data atomik. Hal ini disebabkan karena hanya dapat menangani satu tipe data saja. Misalnya hanya numeric atau hanya integer. Selain menggunakan fungsi class(), kita dapat pula menggunakan fungsi is_numeric(), is.character(), is.logical(), dan sebagainya berdasarkan jenis data apa yang ingin kita cek. Berbeda dengan fungsi class(), ouput yang dihasilkan pada fungsi seperti is_numeric() adalah nilai Boolean sehingga fungsi ini hanya digunakan untuk mengecek apakah jenis data pada objek sama seperti yang kita pikirkan. Sebagai contoh disajikan pada sintaks berikut :
data <- 25
# Cek apakah objek berisi data numerik
is.numeric(data)
##[1] TRUE
# Cek apakah objek adalah karakter
is.character(data)
##[1] TRUE
# Cek apakah objek adalah karakter
is.character(data)
##[1] FALSE
Kita juga dapat mengubah jenis data menjadi jenis lainnya seperti integer menjadi numerik atau sebaliknya. Fungsi yang digunakan adalah as.numeric() jika ingin mengubah suatu jenis data menjadi numerik. Fungsi lainnya juga dapat digunakan sesuai dengan kita ingin mengubah jenis data objek menjadi jenis data lainnya.
# Integer
apel <- 2L
# Ubah menjadi numerik
as.numeric(apel)
##[1] 2
# Cek
is.numeric(apel)
##[1] TRUE
# Logical
nangka <- TRUE
# Ubah logical menjadi numeric
as.numeric(nangka)
##[1] 1
# Karakter
minum <- "minum"
# ubah karakter menjadi numerik
as.numeric(minum)
##Warning: NAs introduced by coercion ##[1] NA
Penting!!! Konversi karakter menjadi numerik akan menghasilkan output NA (not available). R tidak mengetahui bagaimana cara merubah karakter menjadi bentuk numerik. Berdasarkan Tabel 2, vektor karakter dapat dibuat menggunakan tanda kurung baik double quote (””) maupun single quote (”).Jika pada teks yang kita tuliskan mengandung quote maka kita harus menghentikannya menggunakan tanda ( ). Sbegai contoh kita ingin menuliskan ’My friend’s name is “Adi”, pada sintaks akan dituliskan:
'My friend\`s name is "Adi"'
##[1] “My friend`s name is "Adi"
# Atau
"My friend's name \"Adi\""
##[1] “My friend’s name "Adi"”
Struktur data diklasifikasikan berdasarkan dimensi data dan tie data di dalamnya (homogen atau heterogen). Klasifikasi jenis data disajikan pada Dimensi : Homogen Heterogen 1d Atomik vektor List 2d Matriks Dataframe nd Array
Berdasarkan Tabel tersebut dapat kita lihat bahwa objek terbagi atas dua buah struktur data yaitu homogen dan heterogen. Objek dengan struktur data homogen hanya dapat menyimpan satu tipe atau jenis data saja (numerik saja atau factor saja), sedangkan objek dengan struktur data heterogen akan dapat menyimpan berbagai jenis data.
Vektor merupakan kombinasi berbagai nilai (numerik, karakter, logical, dan sebagainya berdasarkan jenis input data) pada objek yang sma. Pada contoh kasus berikut, pembaca akan memiliki sesuai jenis data input yaituvektor numerik, vector karakter, vektor logical, dll.
Vektor dibuat dengan menggunakan fungsi c()(concatenate) seperti yang disajikan pada sintaks berikut:
# membuat vektor numerik
x <- c(3,3.5,4,7)
x # print vektor
##[1] 3.0 3.5 4.0 7.0
# membuat vektor karakter
y <- c("Apel", "Jeruk", "Rambutan", "Salak")
y # print vektor
##[1] “Apel” “Jeruk” “Rambutan” “Salak”
# membuat vektor logical
t <- c("TRUE", "FALSE", "TRUE")
t # print vektor
##[1] “TRUE” “FALSE” “TRUE”
selain menginput nilai pada vektor, kita juga dapat memberi nama nilai setiap vektor menggunakan fungsi names().
# Membuat vektor jumlah buah yang dibeli
Jumlah <- c(5,5,6,7)
names(Jumlah) <- c("Apel", "Jeruk", "Rambutan", "Salak")
# Atau
Jumlah <- c(Apel=5, Jeruk=5, Rambutan=6, Salak=7)
# Print
Jumlah
##Apel Jeruk Rambutan Salak
##5 5 6 7
Penting!!!
Vektor hanya dapat memuat satu buah jenis data. Vektor hanya dapat mengandung jenis data numerik saja, karakter saja, dll.
Untuk menentukan panjang sebuah vektor kita dapat menggunakan fungsi lenght().
length(Jumlah)
##[1] 4
Matriks seperti Excel sheet yang berisi banyak baris dan kolom (kumpulan bebrapa vektor). Matriks digunakan untuk menggabungkan vektor dengan tipe yang sama, yang bisa berupa numerik, karakter, atau logis. Matriks digunakan untuk menyimpan tabel data dalam R. Baris-baris matriks pada umumnya adalah individu / pengamatan dan kolom adalah variabel.
Untuk membuat matriks kita dapat menggunakan fungsi cbind() atau rbind(). Berikut adalah contoh sintaks untuk membuat matriks.
# membuat vektor numerik
col1 <- c(5, 6, 7, 8, 9)
col2 <- c(2, 4, 5, 9, 8)
col3 <- c(7, 3, 4, 8, 7)
# menggabungkan vektor berdasarkan kolom
my_data <- cbind(col1, col2, col3)
my_data
##col1 col2 col3 ##[1,] 5 2 7 ##[2,] 6 4 3 ##[3,] 7 5 4 ##[4,] 8 9 8 ##[5,] 9 8 7
# Mengubah atau menambahkan nama baris
rownames(my_data) <- c("row1", "row2",
"row3", "row4",
"row5")
my_data
##col1 col2 col3 ##row1 5 2 7 ##row2 6 4 3 ##row3 7 5 4 ##row4 8 9 8 ##row5 9 8 7 Catatan:
• cbind(): menggabungkan objek R berdasarkan kolom • rbind(): menggabungkan objek R berdasarkan baris • rownames(): mengambil atau menetapkan nama-nama baris dari objek seperti-matriks • colnames(): mengambil atau menetapkan nama-nama kolom dari objek seperti-matriks “‘
Kita dapat melakukan tranpose (merotasi matriks sehingga kolom menjadi baris dan sebaliknya) menggunakan fungsi t(). Berikut adalah contoh penerapannya:
t(my_data)
##row1 row2 row3 row4 row5 ##col1 5 6 7 8 9 ##col2 2 4 5 9 8 ##col3 7 3 4 8 7
Selain melalui pembentukan sejumlah objek vektor, kita juga dapat membuat matriks menggunakan fungsi matrix(). Secara sederhana fungsi tersebut dapat dituliskan sebagai berikut:
matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,
dimnames = NULL)
Catatan:
• data: vektor data opsional • nrow, ncol: jumlah baris dan kolom yang diinginkan, masingmasing. • byrow: nilai logis. Jika FALSE (default) matriks diisi oleh kolom, jika tidak, matriks diisi oleh baris. • dimnames: Daftar dua vektor yang memberikan nama baris dan kolom masing-masing.