R/matrixSums.R
7165d9c9
 #' @useDynLib celda _rowSumByGroup
b15c03a8
 .rowSumByGroup <- function(x, group, L) {
12d56f35
     group <- factor(group, levels = seq(L))
b15c03a8
     res <- .Call("_rowSumByGroup", x, group)
     return(res)
7165d9c9
 }
 
 #' @useDynLib celda _rowSumByGroupChange
b15c03a8
 .rowSumByGroupChange <- function(x, px, group, pgroup, L) {
12d56f35
     group <- factor(group, levels = seq(L))
     pgroup <- factor(pgroup, levels = seq(L))
b15c03a8
     res <- .Call("_rowSumByGroupChange", x, px, group, pgroup)
     return(res)
7165d9c9
 }
 
 #' @useDynLib celda _colSumByGroup
b15c03a8
 .colSumByGroup <- function(x, group, K) {
12d56f35
     group <- factor(group, levels = seq(K))
b15c03a8
     res <- .Call("_colSumByGroup", x, group)
     return(res)
7165d9c9
 }
 
 #' @useDynLib celda _colSumByGroupChange
12d56f35
 .colSumByGroupChange <- function(x, px, group, pgroup, K) {
     group <- factor(group, levels = seq(K))
     pgroup <- factor(pgroup, levels = seq(K))
b15c03a8
     res <- .Call("_colSumByGroupChange", x, px, group, pgroup)
     return(res)
7165d9c9
 }
 
 
b15c03a8
 #' @useDynLib celda _rowSumByGroup_numeric
2e877ffe
 .rowSumByGroupNumeric <- function(x, group, L) {
12d56f35
     group <- factor(group, levels = seq(L))
b15c03a8
     res <- .Call("_rowSumByGroup_numeric", x, group)
     return(res)
7165d9c9
 }
 
 #' @useDynLib celda _colSumByGroup_numeric
2e877ffe
 .colSumByGroupNumeric <- function(x, group, K) {
12d56f35
     group <- factor(group, levels = seq(K))
b15c03a8
     res <- .Call("_colSumByGroup_numeric", x, group)
     return(res)
7165d9c9
 }
cadc616f
 
 #' @useDynLib celda _perplexityG
d1c540ac
 .perplexityGLogPx <- function(x, phi, psi, group, L) {
12d56f35
     group <- factor(group, levels = seq(L))
b15c03a8
     res <- .Call("_perplexityG", x, phi, psi, group)
     return(res)
cadc616f
 }