v2.22.0
MIToS v2.22.0
This versions introduces several breaking changes to improve the usability of the
Information
module. The main changes are:
-
[Breaking change] The
Information
module deprecates theCounts
type in favor of
the newFrequencies
type. The new type as the same signature and behavior as the old one. -
[Breaking change] The
count
function on sequences has been deprecated in favor of the
frequencies
function, which has the same signature and behavior as the old one. -
[Breaking change] The
count!
function is deprecated in favor offrequencies!
.
The new function use keyword arguments to define the weights and pseudocounts. As an
example of migration,count!(table, weights, pseudocounts, seqs...)
should be replaced
byfrequencies!(table, seqs..., weights=weights, pseudocounts=pseudocounts)
. -
[Breaking change] The
probabilities!
method using positional arguments for the
weights, pseudocounts and pseudofrequencies is deprecated in favor the one that uses
keyword arguments. As an example of migration,
probabilities!(table, weights, pseudocounts, pseudofrequencies, seqs...)
should be replaced by
probabilities!(table, seqs..., weights=weights, pseudocounts=pseudocounts, pseudofrequencies=pseudofrequencies)
. -
[Breaking change] The
Information
has deprecated theentropy
method on
Frequencies
andProbabilities
in favor of theshannon_entropy
function. The
definition of the base is now done using thebase
keyword argument. As an example of
migration,entropy(p, 2)
should be replaced byshannon_entropy(p, base=2)
. -
[Breaking change] The
marginal_entropy
methods based on positional arguments are
deprecated in favor of a method relying on themargin
andbase
keyword arguments.
As an example of migration,marginal_entropy(p, 2, 2.0)
should be replaced by
marginal_entropy(p, margin=2, base=2.0)
. -
[Breaking change] The
mutual_information
method based on positional arguments is
deprecated in favor of a method relying on thebase
keyword argument. As an example of
migration,mutual_information(p, 2)
should be replaced bymutual_information(p, base=2)
. -
[Breaking change] The
mapcolpairfreq!
andmapseqpairfreq!
functions now uses the
booleanusediagonal
keyword argument to indicate if the function should be applied to
the diagonal elements of the matrix (the default istrue
). Before, this was done passing
Val{true}
orVal{false}
as the last positional argument. -
The
mapcolfreq!
,mapseqfreq!
,mapcolpairfreq!
, andmapseqpairfreq!
methods using
keyword arguments, now pass the extra keyword arguments to the mapped function. -
The
Information
module now exports themapfreq
function that offers a more high-level
interface to themapcolfreq!
,mapseqfreq!
,mapcolpairfreq!
, andmapseqpairfreq!
functions. This function allows the user to map a function to the residue frequencies or
probabilities of the columns or sequences of an MSA. Whenrank = 2
, the function is
applied to pairs of sequences or columns. -
The
Information
module now exports methods of theshannon_entropy
,kullback_leibler
,
mutual_information
, andnormalized_mutual_information
functions that take an
AbstractArray{Residue}
as input, e.g. an MSA. Those methods use themapfreq
function
under the hood to ease the calculation of the information measures on MSAs. -
The
frequencies!
,frequencies
,probabilities!
, andprobabilities
functions now
accept arrays ofResidue
s of any dimension. Therefore, there is no need to use the
vec
function to convert the arrays to vectors. -
The
MSA
module now exports theWeightType
union type to representweights
.