tabel frekuensi adalah suatu tabel yang menunjukkan jumlah kemunculan setiap nilai pada suatu variabel. Menggunakan paket dplyr dalam bahasa pemrograman R, kita dapat dengan mudah membuat tabel frekuensi berdasarkan kelompok data.
Berikut adalah langkah-langkah untuk membuat tabel frekuensi berdasarkan kelompok menggunakan dplyr:
Kelompokkan data: Gunakan fungsi group_by() untuk mengelompokkan data berdasarkan variabel tertentu. Misalnya, group_by(data, variabel) akan mengelompokkan data berdasarkan variabel yang ditentukan.
Hitung frekuensi: Gunakan fungsi count() untuk menghitung frekuensi setiap nilai dalam setiap kelompok. Misalnya, count(data, variabel) akan menghitung frekuensi setiap nilai dalam variabel yang ditentukan.
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.2.3
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
df <- data.frame(first=c(1,1,1,2,2,2),
second=c('a', 'a', 'b',
'a', 'c', 'd'))
df %>%
group_by(first,second) %>%
summarize(Freq=n())
## `summarise()` has grouped output by 'first'. You can override using the
## `.groups` argument.
## # A tibble: 5 × 3
## # Groups: first [2]
## first second Freq
## <dbl> <chr> <int>
## 1 1 a 2
## 2 1 b 1
## 3 2 a 1
## 4 2 c 1
## 5 2 d 1
data("ToothGrowth")
df<-ToothGrowth
df %>%
group_by(supp , dose) %>%
summarize(Freq=n())
## `summarise()` has grouped output by 'supp'. You can override using the
## `.groups` argument.
## # A tibble: 6 × 3
## # Groups: supp [2]
## supp dose Freq
## <fct> <dbl> <int>
## 1 OJ 0.5 10
## 2 OJ 1 10
## 3 OJ 2 10
## 4 VC 0.5 10
## 5 VC 1 10
## 6 VC 2 10
Membuat data frame :
data_frame <- data.frame(col1 = c("Mie","Ayam",
"Singgi","Aditya",
"Asam","Pahit",
"Asin","Pedas",
"Toko","Keliling",
"Masih","lanjut" ),
grp = c(rep(c("a","b","c"),4)))
print("Original Data")
## [1] "Original Data"
print(data_frame)
## col1 grp
## 1 Mie a
## 2 Ayam b
## 3 Singgi c
## 4 Aditya a
## 5 Asam b
## 6 Pahit c
## 7 Asin a
## 8 Pedas b
## 9 Toko c
## 10 Keliling a
## 11 Masih b
## 12 lanjut c
data_frame %>%
count(col1, grp) %>%
group_by(grp) %>%
mutate(prop = prop.table(n))
## # A tibble: 12 × 4
## # Groups: grp [3]
## col1 grp n prop
## <chr> <chr> <int> <dbl>
## 1 Aditya a 1 0.25
## 2 Asam b 1 0.25
## 3 Asin a 1 0.25
## 4 Ayam b 1 0.25
## 5 Keliling a 1 0.25
## 6 Masih b 1 0.25
## 7 Mie a 1 0.25
## 8 Pahit c 1 0.25
## 9 Pedas b 1 0.25
## 10 Singgi c 1 0.25
## 11 Toko c 1 0.25
## 12 lanjut c 1 0.25
vec <- rpois(10,30)
data_frame <- data.frame(col1 = vec)
print("Original Data")
## [1] "Original Data"
Memanggil variabel data_frame lalu mencetaknya :
print(data_frame)
## col1
## 1 30
## 2 32
## 3 23
## 4 35
## 5 36
## 6 25
## 7 29
## 8 29
## 9 12
## 10 30
data_frame %>%
count(col1) %>%
mutate(prop = prop.table(n))
## col1 n prop
## 1 12 1 0.1
## 2 23 1 0.1
## 3 25 1 0.1
## 4 29 2 0.2
## 5 30 2 0.2
## 6 32 1 0.1
## 7 35 1 0.1
## 8 36 1 0.1
data_frame <- data.frame(col1 = c(1,3,5,6,23,6,2,5,7,16,8,
9,36,7,12,1,14,2,12,30))
print("Original Data")
## [1] "Original Data"
Memanggil variabel data_frame lalu mencetaknya :
print(data_frame)
## col1
## 1 1
## 2 3
## 3 5
## 4 6
## 5 23
## 6 6
## 7 2
## 8 5
## 9 7
## 10 16
## 11 8
## 12 9
## 13 36
## 14 7
## 15 12
## 16 1
## 17 14
## 18 2
## 19 12
## 20 30
data_frame %>%
count(col1) %>%
mutate(prop = prop.table(n))