Commit 0d2fb7ae authored by tekath's avatar tekath
Browse files

Started roxygen2 documentation. Partially added dturtle_sc.

parent dba8ade9
Loading
Loading
Loading
Loading

R/helper_functions.R

0 → 100644
+126 −0
Original line number Diff line number Diff line
#' Title
#'
#' @param x
#'
#' @return
#' @export
#'
#' @examples
no_na <- function(x){
    return(ifelse(is.na(x), 1, x))
}


#' Filter out
#'
#' @param d
#' @param filter
#'
#' @return
#' @export
#'
#' @examples
smallProportionSD <- function(d, filter) {
    cts <- as.matrix(subset(counts(d), select=-c(gene_id, feature_id)))
    gene.cts <- rowsum(cts, counts(d)$gene_id)
    total.cts <- gene.cts[match(counts(d)$gene_id, rownames(gene.cts)),]
    props <- cts/total.cts
    propSD <- sqrt(matrixStats::rowVars(props))
    return(propSD < filter)
}

#' Title
#'
#' @param tx_mat
#'
#' @return
#' @export
#'
#' @examples
merge_sparse <- function(tx_mat) {

    cnnew <- character()
    rnnew <- character()
    x <- vector()
    i <- numeric()
    j <- numeric()

    for (M in tx_mat) {

        cnold <- colnames(M)
        rnold <- rownames(M)

        cnnew <- union(cnnew,cnold)
        rnnew <- union(rnnew,rnold)

        cindnew <- match(cnold,cnnew)
        rindnew <- match(rnold,rnnew)
        ind <- summary(M)
        i <- c(i,rindnew[ind[,1]])
        j <- c(j,cindnew[ind[,2]])
        x <- c(x,ind[,3])
    }
    return(sparseMatrix(i=i,j=j,x=x,dims=c(length(rnnew),length(cnnew)),dimnames=list(rnnew,cnnew)))
}


#TODO: reevaluate and switch to message
#' Title
#'
#' @param drim
#' @param drim_filt
#'
#' @return
#' @export
#'
#' @examples
count_filtered <- function(drim, drim_filt){
    drim_filt_temp <- dmFilter(drim)
    rm_trans <- nrow(drim@counts)-nrow(drim_filt@counts)
    rm_gene <- length(drim@counts@partitioning)-length(drim_filt@counts@partitioning)

    print(paste0("Removed ", rm_trans," (",formatC(((rm_trans)/nrow(drim@counts))*100, 2, format = "f"),"%) of ",nrow(drim@counts)," transcripts due to filters."))
    print(paste0("Removed ", rm_gene," (",formatC(((rm_gene)/length(drim@counts@partitioning))*100, 2, format = "f"),"%) of ",length(drim@counts@partitioning)," genes due to filters."))
    print(paste0("Of the removed transcripts: ", nrow(drim@counts)-nrow(drim_filt_temp@counts)," (",formatC(((nrow(drim@counts)-nrow(drim_filt_temp@counts))/rm_trans)*100, 2, format = "f"),"%) had no expression."))
    print(paste0("This explains ", length(drim@counts@partitioning)-length(drim_filt_temp@counts@partitioning)," (",formatC(((length(drim@counts@partitioning)-length(drim_filt_temp@counts@partitioning))/rm_gene)*100, 2, format = "f"),"%) of the removed genes."))
    print(paste0("--> Proceed with ",length(drim_filt@counts@partitioning)," genes and ",nrow(drim_filt@counts)," transcripts."))
}


#' Title
#'
#' @param gID
#' @param dtu
#'
#' @return
#' @export
#'
#' @examples
get_diff <- function(gID, dtu){
    group <- dtu$group
    y <- data.frame(row.names = rownames(dtu$drim@fit_full[[gID]]))
    y$a <- apply(dtu$drim@fit_full[[gID]][, which(group==levels(group)[1])], 1, unique)
    y$b <- apply(dtu$drim@fit_full[[gID]][, which(group==levels(group)[2])], 1, unique)
    y$diff <- y$a-y$b
    return(y)
}

#' Title
#'
#' @param dtu_table
#' @param dtu
#'
#' @return
#' @export
#'
#' @examples
add_max_delta <- function(dtu_table, dtu){
    getmax <- function(gID){
        y <- get_diff(gID, dtu)
        #get absoulte maximum while preserving sign
        return(y$diff[which.max(abs(y$diff))])
    }

    dtu_table[[paste0("max(",levels(dtu$group)[1], "-",levels(dtu$group)[2],")")]] <- as.numeric(sapply(dtu_table$geneID, FUN = getmax))
    return(dtu_table)
}

man/add_max_delta.Rd

0 → 100644
+17 −0
Original line number Diff line number Diff line
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/helper_functions.R
\name{add_max_delta}
\alias{add_max_delta}
\title{Title}
\usage{
add_max_delta(dtu_table, dtu)
}
\arguments{
\item{dtu}{}
}
\value{

}
\description{
Title
}

man/add_to_seurat.Rd

0 → 100644
+17 −0
Original line number Diff line number Diff line
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/dtu_analysis.R
\name{add_to_seurat}
\alias{add_to_seurat}
\title{Title}
\usage{
add_to_seurat(tx_mat, seurat_obj)
}
\arguments{
\item{seurat_obj}{}
}
\value{

}
\description{
Title
}

man/count_filtered.Rd

0 → 100644
+17 −0
Original line number Diff line number Diff line
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/helper_functions.R
\name{count_filtered}
\alias{count_filtered}
\title{Title}
\usage{
count_filtered(drim, drim_filt)
}
\arguments{
\item{drim_filt}{}
}
\value{

}
\description{
Title
}
+22 −0
Original line number Diff line number Diff line
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/visualization.R
\name{create_dtu_table}
\alias{create_dtu_table}
\title{Title}
\usage{
create_dtu_table(
  dtu,
  gene_name_info = NULL,
  gene_chromosome_info = NULL,
  gene_description = NULL
)
}
\arguments{
\item{gene_description}{}
}
\value{

}
\description{
Title
}
Loading