Я использую R для расчета индекса разнообразия Бриллюэна в группах. Код ниже:
Brillouin_Diversity_Index <- function(x)
{ N <- sum(x)
(log10(factorial(N)) - sum(log10(factorial(x)))) / N
}
dt <- data.table(x = c("A","B","C","D","E","A","D","E","C","S"),
y = c(12,23,12,12,32,34,21,2,10,5))
dt[,Brillouin_Diversity_Index(y),by = .(x)]
- x V1
- A 0.23021887
- B 0.00000000
- C 0,26412121
- D 0,25909105
- E 0,08085185
- S 0,00000000