package biocaml
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=fae219e66db06f81f3fd7d9e44717ccf2d6d85701adb12004ab4ae6d3359dd2d
sha512=f6abd60dac2e02777be81ce3b5acdc0db23b3fa06731f5b2d0b32e6ecc9305fe64f407bbd95a3a9488b14d0a7ac7c41c73a7e18c329a8f18febfc8fd50eccbc6
doc/biocaml.unix/Biocaml_unix/Accu/index.html
Module Biocaml_unix.Accu
Source
A datastructure (based on Hashtbl) to accumulate values.
An Accu.t
can be seen as a generalized histogram: samples are mapped to bins, and each bin has a corresponding value which may be its size or its contents depending on the need.
Generic API
General type for accumulators: 'sample
s are mapped to 'bin
s, and the 'accu
mulated value for a 'bin
is updated with an 'increment
val create :
?n:int ->
bin:('a -> 'b) ->
zero:'d ->
add:('c -> 'd -> 'd) ->
unit ->
('a, 'b, 'c, 'd) t
create ~n ~zero ~bin ~add
creates an accumulator, which maps instances to bins with bin
, uses zero
as a neutral element (that is the value associated to a bin before any value has been added to it) and updates the value of a bin with add
. n
is an estimation of the maximum number of bins.
add accu x y
updates the value in accu
for the bin of x
by an increment y
get accu x
returns the value associated to b
in accu
.
Counters and histograms
val product :
?filter:('a -> 'b -> bool) ->
('a -> 'b -> 'c) ->
'a list ->
'b list ->
('c * int) Stream.t
product filter f l1 l2
computes an histogram of values returned by f when it is applied for all combinations of elements in l1
and l2
such that the predicate filter
is true