Hukum Benford untuk digit pertama
Hukum Benford menyatakan bahwa peluang digit pertama sama dengan d kira-kira adalah logaritma dari (1 + 1/d).
Dengan memplot frekuensi yang diharapkan, akan terlihat jelas bahwa digit 1,…,9 tidak muncul dengan frekuensi yang sama.
Latihan ini adalah bagian dari kursus
Deteksi Fraud di R
Petunjuk latihan
- Implementasikan Hukum Benford sebagai fungsi
benlawuntuk digit pertama menggunakan log basis 10. - Hitung frekuensi yang diharapkan untuk kasus digit pertama bernilai 5.
- Buat sebuah dataframe dengan satu kolom
digitberisi angka 1 hingga 9, dan satu kolomprobabilityberisi probabilitas masing-masing menurut Hukum Benford. - Kirim untuk memplot frekuensi yang diharapkan untuk digit 1, 2, …, 9 dalam sebuah barplot.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Implement Benford's Law for first digit
benlaw <- function(d) log10(___ + ___ / ___)
# Calculate expected frequency for d=5
benlaw(___)
# Create a dataframe of the 9 digits and their Benford's Law probabilities
df <- data.frame(digit = ___:___, probability = ___)
# Create barplot with expected frequencies
ggplot(df, aes(x = digit, y = probability)) +
geom_bar(stat = "identity", fill = "dodgerblue") +
xlab("First digit") + ylab("Expected frequency") +
scale_x_continuous(breaks = 1:9, labels = 1:9) +
ylim(0, 0.33) + theme(text = element_text(size = 25))