vim.norm: Standardized and Sign-Permutation Based Importance Measure

Description Usage Arguments Details Value Author(s) References See Also

View source: R/vim.norm.R


Computes a standarized or a sign-permutation based version of either the Single Tree Measure, the Quantitative Response Measure, or the Multiple Tree Measure.


vim.norm(object, mu = 0)

vim.signperm(object, mu = 0, n.perm = 10000, n.subset = 1000, 
  version = 1, adjust = "bonferroni", rand = NA)



either the output of logicFS or vim.logicFS with addMatImp = TRUE, or the output of logic.bagging with importance = TRUE and addMatImp = TRUE.


a non-negative numeric value against which the importances are tested. See Details.


the number of sign permutations used in vim.signperm.


an integer specifying how many permutations should be considered at once.


either 1 or 2. If 1, then the importance measure is computed by 1 - padj, where padj is the adjusted p-value. If 2, the importance measure is determined by -log10(padj), where a raw p-value equal to 0 is set to 1 / (10 * n.perm) to avoid infinitive importances.


character vector naming the method with which the raw permutation based p-values are adjusted for multiplicity. If "qvalue", the function from the package siggenes is used to compute q-values. Otherwise, p.adjust is used to adjust for multiple comparisons. See p.adjust for all other possible specifications of adjust. If "none", the raw p-values will be used. For more details, see Details.


an integer for setting the random number generator in a reproducible case.


In both vim.norm and vim.signperm, a paired t-statistic is computed for each prime implicant, where the numerator is given by VIM - mu with VIM being the single or the multiple tree importance, and the denominator is the corresponding standard error computed by employing the B improvements of the considered prime implicant in the B logic regression models, where VIM is the mean over these B improvements.

Note that in the case of a quantitative response, such a standardization is not necessary. Thus, vim.norm returns a warning when the response is quantitative, and vim.signperm does not divide VIM - mu by its sample standard error.

Using mu = 0 might lead to calling a prime implicant important, even though it actually shows only improvements of 1 or 0. When considering the prime implicants, it might be therefore be helpful to set mu to a value slightly larger than zero.

In vim.norm, the value of this t-statistic is returned as the standardized importance of a prime implicant. The larger this value, the more important is the prime implicant. (This applies to all importance measures – at least for those contained in this package.) Assuming normality, a possible threshold for a prime implicant to be considered as important is the 1 - 0.05 / m quantile of the t-distribution with B - 1 degrees of freedom, where m is the number of prime implicants.

In vim.signperm, the sign permutation is used to determine n.perm permuted values of the one-sample t-statistic, and to compute the raw p-values for each of the prime implicants. Afterwards, these p-values are adjusted for multiple comparisons using the method specified by adjust. The permutation based importance of a prime implicant is then given by 1 - these adjusted p-values. Here, a possible threshold for calling a prime implicant important is 0.95.


An object of class logicFS containing


the prime implicants,


the respective importance of the prime implicants,




the type of model (1: classification, 2: linear regression, 3: logistic regression),


further parameters (if addInfo = TRUE),




the name of the used importance measure,


the value of useN from the original analysis with, e.g., logicFS,


the threshold suggested in Details,




Holger Schwender,


Schwender, H., Ruczinski, I., Ickstadt, K. (2011). Testing SNPs and Sets of SNPs for Importance in Association Studies. Biostatistics, 12, 18-32.

See Also

logic.bagging, logicFS, vim.logicFS, vim.chisq, vim.ebam

logicFS documentation built on Nov. 8, 2020, 5:23 p.m.