nama_vector <-c(5,FALSE,"true","8.3","Statistika")
nama_vector
## [1] "5" "FALSE" "true" "8.3" "Statistika"
berdasarkan output yang dihasilkan, seluruh elemen berubah menjadi character, padahal seharusnya : 5 → numeric FALSE → logical “true” → string “8.3” → string “Statistika” → string Jadi, dapat disimpulkan bahwa Vector di R hanya boleh memiliki satu tipe data yang sama. Jika tipe berbeda digabung, R akan melakukan coercion (konversi otomatis) ke tipe yang paling fleksibel, yaitu string.
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"
Untuk Vector : 1.Semua elemen harus satu tipe data 2.Mengalami
coercion otomatis
3.Struktur lebih sederhana
Sedangkan untuk List : 1.Bisa menyimpan berbagai tipe data 2.Tidak mengalami coercion 3.Lebih fleksibel
kelompok_kkn <- data.frame(
Nama = c("Andi","Budi","Desmiwa","Azhar","Eka","Devi","Gina","Mail","Indra","Fizi"),
NIM = c(2300,2301,2302,2303,2304,2305,2306,2307,2308,2309),
Prodi = c("Statistika","Informatika","Statistika","Matematika","Statistika","Informatika","Matematika","Statistika","Informatika","Matematika")
)
kelompok_kkn
## Nama NIM Prodi
## 1 Andi 2300 Statistika
## 2 Budi 2301 Informatika
## 3 Desmiwa 2302 Statistika
## 4 Azhar 2303 Matematika
## 5 Eka 2304 Statistika
## 6 Devi 2305 Informatika
## 7 Gina 2306 Matematika
## 8 Mail 2307 Statistika
## 9 Indra 2308 Informatika
## 10 Fizi 2309 Matematika
kelompok_kkn[1,] # [index_baris, ]
## Nama NIM Prodi
## 1 Andi 2300 Statistika
kelompok_kkn[1:3,] # Baris 1 sampai 3
## Nama NIM Prodi
## 1 Andi 2300 Statistika
## 2 Budi 2301 Informatika
## 3 Desmiwa 2302 Statistika
#pemanggilan dengan $ (Nama) :
kelompok_kkn$Nama #$nama_kolom
## [1] "Andi" "Budi" "Desmiwa" "Azhar" "Eka" "Devi" "Gina"
## [8] "Mail" "Indra" "Fizi"
#pemanggilan dengan index kolom (kolom ke-2) :
kelompok_kkn[,2] #[ ,index_kolom]
## [1] 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309
#pemanggilan dengan nama kolom (prodi) :
kelompok_kkn[,"Prodi"] #[ , "nama_kolom"]
## [1] "Statistika" "Informatika" "Statistika" "Matematika" "Statistika"
## [6] "Informatika" "Matematika" "Statistika" "Informatika" "Matematika"
kelompok_kkn[2,3] #baris,kolom
## [1] "Informatika"
Penjelasan Perbedaan Cara Pemanggilan: 1. [baris, kolom] Digunakan untuk mengambil bagian tertentu berdasarkan posisi index. 2. $nama_kolom Digunakan untuk mengambil satu kolom berdasarkan nama kolom. 3. [,index_kolom] Mengambil kolom berdasarkan urutan kolom.
Perbedaannya: 1. $ hanya bisa digunakan untuk kolom. 2. [ , ] lebih fleksibel karena bisa memilih baris dan kolom sekaligus. 3. Pemanggilan dengan index menggunakan angka. 4. Pemanggilan dengan nama menggunakan nama kolom.
#data missing
data_missing <- data.frame(
nama = c("Tarmin","Sibud",NA,"Diwa","Eka"),
nilai = c(80, NA, 75, 90, NA)
)
data_missing
## nama nilai
## 1 Tarmin 80
## 2 Sibud NA
## 3 <NA> 75
## 4 Diwa 90
## 5 Eka NA
#mencari letak missing value
is.na(data_missing)
## nama nilai
## [1,] FALSE FALSE
## [2,] FALSE TRUE
## [3,] TRUE FALSE
## [4,] FALSE FALSE
## [5,] FALSE TRUE
#untuk mengetahui posisi NA
which(is.na(data_missing), arr.ind = TRUE)
## row col
## [1,] 3 1
## [2,] 2 2
## [3,] 5 2
#Artinya missing value berada di posisi : Baris 3 kolom 1, Baris 2 kolom 2, Baris 5 kolom 2, Baris 4 kolom 3")
Output “True” menyatakan missing value nya.