#' Write scrattch data to feather files
#'
#' This is likely to be deprecated soon.
#'
#' @param anno An annotations data.frame
#' @param data A data-containing data.frame
#' @param desc Descriptions of annotations in a data.frame
#' @param feather_dir The directory to write feather files to.
#'
build_feather <- function(anno = NULL, data = NULL, desc = NULL, feather_dir = NULL) {
#library(dplyr)
#library(feather)
if(is.null(anno)) {
stop("anno table required.")
} else if(is.null(data)) {
stop("data table required.")
} else if(is.null(desc)) {
stop("desc table required.")
} else {
# Check for old data format
if(names(data)[1] == "gene") {
# if old format is used, transpose the table
gn <- data$gene
data <- t(data[,-1])
colnames(data) <- gn
data <- as.data.frame(data,stringsAsFactors=F)
data <- cbind(data,sample_id = rownames(data),stringsAsFactors=F)
}
if(!dir.exists(feather_dir)) {
dir.create(feather_dir)
}
datafile <- paste0(feather_dir,"/data.feather")
cat("Writing data table to",datafile,"\n")
feather::write_feather(data, datafile)
annofile <- paste0(feather_dir,"/anno.feather")
cat("Writing anno table to",annofile,"\n")
feather::write_feather(anno, annofile)
descfile <- paste0(feather_dir,"/desc.feather")
cat("Writing desc table to",descfile,"\n")
feather::write_feather(desc, descfile)
}
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.