NIM = 210605110007

Jurusan = Teknik Informtika

fakultas = Sains dan Teknologi

Fungsi Tapply

Fungsi ini sangat berguna jika pembaca ingin menghitung suatu nilai misalnya mean berdasarkan grup data atau factor.

tapply(vector, grouping, f): output adalah matriks/array, di mana elemen dalam matriks/array adalah nilai f pada pengelompokan g dari vektor, dan g didorong ke baris/nama-nama col.

Beikut sintaks yang digunakan untuk pegoperasian Tapply:

tapply(X, INDEX, FUN = NULL, ..., simplify = TRUE)

Catatan:

  • X : vektor, data frame atau list
  • INDEX : list satu atau beberapa factor yang memiliki panjang sama dengan X.
  • FUN : fungsi yang akan digunakan. Fungsi yang dapat digunakan dapat berupa fungsi dasar matematika atau statistika, serta user define function. Subset juga dimungkinkan pada fungsi ini.
  • … : opsional argumen pada fungsi yang digunakan.
  • simplify: logical. Jika nilainya TRUE maka output yang dihasilkan adalah bentuk skalar.

Berikut adalah contoh penerapannya:

## membuat tabel frekuensi
groups <- as.factor(rbinom(32, n = 5, prob = 0.4))

tapply(groups, groups, length)
##  9 12 13 14 
##  1  2  1  1
# atau
table(groups)
## groups
##  9 12 13 14 
##  1  2  1  1
## membuat tabel kontingensi
# menghitung jumlah breaks berdasarkan faktor jenis wool
# dan tensi level
tapply(X=warpbreaks$breaks, INDEX=warpbreaks[,-1], FUN=sum)
##     tension
## wool   L   M   H
##    A 401 216 221
##    B 254 259 169
# menghitung mean panjang gigi babi hutan berdasarkan
# jenis suplemen dan dosisnya
tapply(ToothGrowth$len, ToothGrowth[,-1], mean)
##     dose
## supp   0.5     1     2
##   OJ 13.23 22.70 26.06
##   VC  7.98 16.77 26.14
# menghitung mpg minimum berdasarkan jumlah silinder pada mobil
tapply(mtcars$mpg, mtcars$cyl, min, simplify=FALSE)
## $`4`
## [1] 21.4
## 
## $`6`
## [1] 17.8
## 
## $`8`
## [1] 10.4

Referensi:

  1. https://www.it-swarm-id.com/id/r/fungsi-pengelompokan-tapply-agregat-dan-berlaku-keluarga/969209545/

  2. https://bookdown.org/moh_rosidi2610/Metode_Numerik/programmingandfunction.html#vapply