R/bn.skel.utils.R

Defines functions bn.skel.utils

Documented in bn.skel.utils

bn.skel.utils <- function(mod, G = NULL, roc = TRUE, alpha = 0.01) {
  area <- NULL
  preds <- mod$pvalue
  preds <- preds[ upper.tri(preds) ]
  if ( !is.null(G) ) {
    group <- G[ upper.tri(G) ] 
    area <- MXM::auc(group, -preds, roc = roc)
  }  
  p <- exp(preds)
  sig.p <- p[ which(p <= alpha) ]
  fdr <- min(1, length(p) / length(sig.p) * max(sig.p) )
  theseis <- which( mod$pvalue < log(alpha), arr.ind = TRUE )
  sig.p <- cbind(theseis, mod$pvalue[theseis])
  sig.p <- Rfast::rowSort(sig.p)
  sig.p <- unique(sig.p)
  sig.p <- cbind(sig.p[, 2:3], sig.p[, 1] )
  sig.p <- sig.p[order(sig.p[, 3]), ]
  sig.p[, 3] <- exp(sig.p[, 3])
  theseis <- NULL
  list(area = area, fdr = fdr, sig.pvalues = sig.p)
}

Try the MXM package in your browser

Any scripts or data that you put into this service are public.

MXM documentation built on Aug. 25, 2022, 9:05 a.m.