Dosen Pengampu : Prof. Dr. Suhartono, M.Kom

Lembaga : Universitas Islam Negeri Maulana Malik Ibrahim Malang

Jurusan : Teknik Informatika

Fakultas : Sains dan Teknologi

Pengenalan Tipe Data Dalam R

Dalam pemrograman, tipe data merupakan konsep yang penting.

Tidak seperti kebanyakan bahasa pemrograman lain seperti C atau Java yang mendeklarasikan variabel dengan tipe tertentu, pada R Language variabel tidak perlu dideklarasikan dengan tipe tertentu dan bahkan dapat mengubah tipe setelah disetel. R memiliki berbagai tipe data dan kelas objek.
Penggunaan program/software Rakan sangat bergantung dengan seberapa paham anda dalam menggunakan tipe data dan stuktur data yang berlaku pada R. Anda memerlukan pemahaman yang kuat tentang tipe data dan strukturnya kemudian kapan digunakan atau bagaimana cara mengolahnya. Tipe data sangat penting untuk dipahami karena ini adalah objek yang akan anda temui setiap kali anda mengoperasikan R.
Data pada R dapat dikelompokan berdasarkan beberapa tipe. Tipe data pada R disajikan pada Tabel Dibawah ini :
Tipe Data Contoh Keterangan
Logical TRUE, FALSE Nilai Boolean
Numeric 12.3,5,999 Segala jenis angka
Integer 23L,97L,3L Bilangan integer (bilangan bulat)
Complex 2i, 3i, 9i Bilangan kompleks
Character ‘a’,“b”,“123” Karakter dan string
Factor 1,0,“Merah” Dapat berupa numerik atau string(namun pada proses akan terbaca sebagai angka)
Raw Identik dgn “hello” Segala jenis data yang disimpan sebagai raw bytes
Sintaks berikut adalah contoh dari tipe data pada R. Untuk mengetahui tipa data suatu objek kita dapat menggunakan perintah class(). Contoh :
# 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)
## [1] "raw"

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] FALSE
## [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.

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 tipe data di dalamnya (homogen atau heterogen). Klasifikasi jenis data disajikan pada Tabel Di bawah ini :

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.

\(Referensi\)