#' Description: Write matrix in tab file
#'
#' @param dat data matrix
#' @param filename output file
#' @param verbose verbose
#' @return output file location
#'
#' @export
#' @references See citation("microbiome")
#' @author Contact: Leo Lahti \email{microbiome-admin@@googlegroups.com}
#' @keywords utilities
WriteMatrix <- function (dat, filename, verbose = FALSE) {
if (verbose) { message(paste("Writing output in ", filename)) }
write.table(dat, file = filename, quote = FALSE, sep = "\t", row.names = FALSE)
filename
}
#' Description: determine threshold for bg correction
#'
#' Arguments:
#' @param dat data matrix (in approximately normal scale ie. logged)
#'
#' Returns:
#' @return threshold value
#'
#' @export
#' @references See citation("microbiome")
#' @author Contact: Leo Lahti \email{microbiome-admin@@googlegroups.com}
#' @keywords utilities
estimate.min.threshold <- function (dat) {
#estimate min threshold
DD <- density(as.numeric(unlist(dat)))
#find mode
noise_mode <- DD$x[[which.max(DD$y)]] # DD$x[which(diff(DD$y)<0)[1]]
#compute sd of noise
noise_sd <- sd(dat[dat < noise_mode])
#threshold
low.thresh <- noise_mode + 6*noise_sd
low.thresh
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.