calc_ig: Calculate IG for single feature

Description Usage Arguments Details Value Note References Examples

Description

Computes information gain of single feature and target vector.

Usage

1
calc_ig(feature, target_b, len_target, pos_target)

Arguments

feature

feature vector.

target_b

target in bits (as per as.bit).

len_target

length of the target vector.

pos_target

number of positive cases in the target vector.

Details

The information gain term is used here (improperly) as a synonym of mutual information. It is defined as:

IG(X; Y) = ∑_{y \in Y} ∑_{x \in X} p(x, y) \log ≤ft(\frac{p(x, y)}{p(x) p(y)} \right)

In biogram package information gain is computed using following relationship: IG = E(S) - E(S|F)

Value

A numeric vector of length 1 representing information gain in nats.

Note

During calculations 0 \log 0 = 0. For a justification see References.

The function was designed to be as fast as possible subroutine of calc_criterion and might be cumbersome if directly called by a user.

References

Cover TM, Thomas JA Elements of Information Theory, 2nd Edition Wiley, 2006.

Examples

1
2
3
4
tar <- sample(0L:1, 100, replace = TRUE)
feat <- sample(0L:1, 100, replace = TRUE)
library(bit) # used to code vector as bit
calc_ig(feat, as.bit(tar), 100, sum(tar))


Search within the biogram package
Search all R packages, documentation and source code

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.