add subset algorithm
This commit is contained in:
@@ -2,9 +2,14 @@ package mathx
|
||||
|
||||
import "math"
|
||||
|
||||
func CalcEntropy(m map[interface{}]int, total int) float64 {
|
||||
func CalcEntropy(m map[interface{}]int) float64 {
|
||||
var entropy float64
|
||||
|
||||
var total int
|
||||
for _, v := range m {
|
||||
total += v
|
||||
}
|
||||
|
||||
for _, v := range m {
|
||||
proba := float64(v) / float64(total)
|
||||
entropy -= proba * math.Log2(proba)
|
||||
|
||||
Reference in New Issue
Block a user