Rilevamento delle frodi in R
Bart Baesens
Professor Data Science at KU Leuven
Preferibilmente, oltre 1000 numeri che coprono più ordini di grandezza.
Nota che è sempre possibile che i dati non seguano la legge di Benford.
Un dataset segue la legge di Benford per le prime due cifre se la probabilità che le prime due cifre $D_1D_2$ siano uguali a $d_1d_2$ è circa:
$$P(D_1D_2=d_1d_2)=\log\left(1+\frac{1}{d_1d_2}\right) \qquad d_1d_2\in [10, 11, ..., 98, 99]$$
benlaw <- function(d) log10(1 + 1 / d)
benlaw(12)
0.03476211
Questo test è più affidabile di quello sulla prima cifra ed è il più usato nel rilevamento di frodi.
bfd.cen <- benford(census.2009$pop.2009, number.of.digits = 2)
plot(bfd.cen)

expenses contiene 1000 rimborsi.benford.analysis.bfd1.exp <- benford(expenses, number.of.digits = 1)
plot(bfd1.exp)

bfd2.exp <- benford(expenses, number.of.digits = 2)
plot(bfd2.exp)

Rilevamento delle frodi in R