package biocaml
Install
dune-project
Dependency
Authors
Maintainers
Sources
md5=4cf944bcae5d36bf47b67f6bcb2455d7
sha512=0262b5768aefd7c080f664c46c88876fce9a658cc6a87358a77b7112c49ae3042e7ab542e76be5738fbaeda853149b308b48d4897960b5c7ae3b4da71d978bd8
doc/biocaml.unix/Biocaml_unix/Accu/index.html
Module Biocaml_unix.Accu
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: 'samples are mapped to 'bins, and the 'accumulated 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) tcreate ~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.
val add : ('a, 'b, 'c, 'd) t -> 'a -> 'c -> unitadd accu x y updates the value in accu for the bin of x by an increment y
val stream : ('a, 'b, 'c, 'd) t -> ('b * 'd) Stream.tval to_alist : ('a, 'b, 'c, 'd) t -> ('b * 'd) listval get : ('a, 'b, 'c, 'd) t -> 'b -> 'd optionget accu x returns the value associated to b in accu.
Counters and histograms
module Counter : sig ... endval product :
?filter:('a -> 'b -> bool) ->
('a -> 'b -> 'c) ->
'a list ->
'b list ->
('c * int) Stream.tproduct 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
Relation
module Relation : sig ... endmodule Bins : sig ... end