1. Vector

Syntax

nama_vector <- c(5, FALSE, "true", 8.3, "Statistika")
nama_vector
## [1] "5"          "FALSE"      "true"       "8.3"        "Statistika"

Temuan

Vector di R bersifat homogen, artinya hanya boleh memiliki satu tipe data. Karena di dalam vector terdapat data bertipe character (“true” dan “Statistika”), maka seluruh elemen akan dikonversi menjadi character.Hal ini disebut type coercion.

Urutan coercion di R adalah:

logical → numeric → character

Sehingga output yang dihasilkan adalah seluruh elemen menjadi karakter.

2. LIST

syntax

contoh_list <- list(5, FALSE, "true", 8.3, "Statistika")
contoh_list
## [[1]]
## [1] 5
## 
## [[2]]
## [1] FALSE
## 
## [[3]]
## [1] "true"
## 
## [[4]]
## [1] 8.3
## 
## [[5]]
## [1] "Statistika"

##Temuan

Berbeda dengan vector, list bersifat heterogen, artinya dapat menyimpan berbagai tipe data tanpa mengubah tipe data aslinya.

Perbedaan utama vector dan list:

Vector: satu tipe data (homogen)

List: dapat berbagai tipe data (heterogen)

Vector melakukan coercion

List tidak melakukan coercion

#3. Data Frame

##syntax

data_mhs <- data.frame(
  nama = c("key","wafi","zahrul","desmiwa","afiq",
           "hanip","nopal","nabila","disa","zufan"),
  nim = c(101,102,103,104,105,106,107,108,109,110),
  prodi = c("Statistika","Statistika","Matematika","Statistika","Informatika",
            "Statistika","Matematika","Informatika","Statistika","Matematika")
)
data_mhs
##       nama nim       prodi
## 1      key 101  Statistika
## 2     wafi 102  Statistika
## 3   zahrul 103  Matematika
## 4  desmiwa 104  Statistika
## 5     afiq 105 Informatika
## 6    hanip 106  Statistika
## 7    nopal 107  Matematika
## 8   nabila 108 Informatika
## 9     disa 109  Statistika
## 10   zufan 110  Matematika

##pemanggilan baris

data_mhs[1, ]
##   nama nim      prodi
## 1  key 101 Statistika

##pemangglan kolom

data_mhs[,1]
##  [1] "key"     "wafi"    "zahrul"  "desmiwa" "afiq"    "hanip"   "nopal"  
##  [8] "nabila"  "disa"    "zufan"

##pemanggilan baris dan kolom

data_mhs[1, c("nama","prodi")]
##   nama      prodi
## 1  key Statistika

##perbedaan pemanggilan Pada data frame data_mhs, pemanggilan data dilakukan dengan struktur umum [baris, kolom], di mana bagian sebelum koma menunjukkan baris dan bagian setelah koma menunjukkan kolom.

Pada syntax data_mhs[1, ], hanya bagian baris yang diisi, yaitu baris pertama, sedangkan bagian kolom dikosongkan. Artinya, R akan mengambil seluruh kolom yang terdapat pada baris pertama. Dengan kata lain, ini adalah pemanggilan satu baris secara lengkap.

Pada syntax data_mhs[,1], bagian baris dikosongkan dan bagian kolom diisi dengan angka 1. Ini berarti R akan mengambil seluruh baris pada kolom pertama. Karena menggunakan indeks numerik, kolom yang dipanggil bergantung pada urutan posisi kolom dalam data frame.

Sedangkan pada syntax data_mhs[1, c(“nama”,“prodi”)], baris pertama dipanggil dan kolom dipilih berdasarkan nama, yaitu nama dan prodi. Cara ini lebih spesifik karena tidak bergantung pada posisi kolom, melainkan langsung pada nama variabelnya.

Dengan demikian, perbedaan utama terletak pada bagian indeks yang diisi (baris, kolom, atau keduanya) serta cara penentuan kolom apakah menggunakan posisi numerik atau nama variabel.

##4. missing value

##syntax

data_na <- data.frame(
  nama = c("Andi","Budi",NA,"Dina","Eko"),
  nilai = c(80, NA, 75, 90, NA),
  prodi = c("Statistika","Matematika","Statistika", NA, "Informatika")
)

data_na
##   nama nilai       prodi
## 1 Andi    80  Statistika
## 2 Budi    NA  Matematika
## 3 <NA>    75  Statistika
## 4 Dina    90        <NA>
## 5  Eko    NA Informatika

##cek missing value

is.na(data_na)
##       nama nilai prodi
## [1,] FALSE FALSE FALSE
## [2,] FALSE  TRUE FALSE
## [3,]  TRUE FALSE FALSE
## [4,] FALSE FALSE  TRUE
## [5,] FALSE  TRUE FALSE

##cek posisi missing value

which(is.na(data_na), arr.ind = TRUE)
##      row col
## [1,]   3   1
## [2,]   2   2
## [3,]   5   2
## [4,]   4   3