]> gitweb.factorcode.org Git - factor.git/commitdiff
math.statistics: faster and simpler entropy word.
authorJohn Benediktsson <mrjbq7@gmail.com>
Wed, 11 Jul 2012 19:26:20 +0000 (12:26 -0700)
committerJohn Benediktsson <mrjbq7@gmail.com>
Wed, 11 Jul 2012 19:26:20 +0000 (12:26 -0700)
basis/math/statistics/statistics.factor

index ac414e8b2dc952d5ee710e546dfb822d04d72e24..8073554b4f3bd093c1948b5098afe282c5820446 100644 (file)
@@ -330,8 +330,7 @@ ALIAS: corr sample-corr
     [ ?first ] keep [ max dup ] map nip ;
 
 : entropy ( seq -- n )
-    dup members [ [ = ] curry count ] with map
-    dup sum v/n dup [ log ] map v* sum neg ;
+    histogram values dup sum '[ _ / dup log * ] map-sum neg ;
 
 : binary-entropy ( p -- h )
     [ dup log * ] [ 1 swap - dup log * ] bi + neg 2 log / ;