Fixed syntax
This commit is contained in:
parent
1b5d97a041
commit
75ff42daed
3 changed files with 10 additions and 8 deletions
|
|
@ -1,4 +1,4 @@
|
||||||
computePopulationLogml <- function(pops, adjprior, priorTerm = 0) {
|
computePopulationLogml <- function(pops, adjprior, priorTerm) {
|
||||||
# Palauttaa length(pops)*1 taulukon, jossa on laskettu korikohtaiset
|
# Palauttaa length(pops)*1 taulukon, jossa on laskettu korikohtaiset
|
||||||
|
|
||||||
# ======================================================== #
|
# ======================================================== #
|
||||||
|
|
@ -29,6 +29,7 @@ computePopulationLogml <- function(pops, adjprior, priorTerm = 0) {
|
||||||
2
|
2
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
if (is.null(priorTerm)) priorTerm <- 0
|
||||||
popLogml <- term1 - sum(lgamma(1 + SUMCOUNTS[pops, ]), 2) - priorTerm
|
popLogml <- term1 - sum(lgamma(1 + SUMCOUNTS[pops, ]), 2) - priorTerm
|
||||||
return(popLogml)
|
return(popLogml)
|
||||||
}
|
}
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
#' @return Either a list or a vector
|
#' @return Either a list or a vector
|
||||||
#' @author Waldir Leoncio
|
#' @author Waldir Leoncio
|
||||||
min_MATLAB <- function(X, indices = TRUE) {
|
min_MATLAB <- function(X, indices = TRUE) {
|
||||||
|
if (!is(X, "matrix")) X <- as.matrix(X)
|
||||||
mins <- apply(X, 2, min)
|
mins <- apply(X, 2, min)
|
||||||
idx <- sapply(seq_len(ncol(X)), function(x) match(mins[x], X[, x]))
|
idx <- sapply(seq_len(ncol(X)), function(x) match(mins[x], X[, x]))
|
||||||
if (indices) {
|
if (indices) {
|
||||||
|
|
@ -21,6 +22,7 @@ min_MATLAB <- function(X, indices = TRUE) {
|
||||||
#' @return Either a list or a vector
|
#' @return Either a list or a vector
|
||||||
#' @author Waldir Leoncio
|
#' @author Waldir Leoncio
|
||||||
max_MATLAB <- function(X, indices = TRUE) {
|
max_MATLAB <- function(X, indices = TRUE) {
|
||||||
|
if (!is(X, "matrix")) X <- as.matrix(X)
|
||||||
maxs <- apply(X, 2, max)
|
maxs <- apply(X, 2, max)
|
||||||
idx <- sapply(seq_len(ncol(X)), function(x) match(maxs[x], X[, x]))
|
idx <- sapply(seq_len(ncol(X)), function(x) match(maxs[x], X[, x]))
|
||||||
if (indices) {
|
if (indices) {
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,13 @@
|
||||||
updateGlobalVariables <- function(ind, i2, diffInCounts, adjprior, priorTerm) {
|
updateGlobalVariables <- function(ind, i2, diffInCounts, adjprior, priorTerm) {
|
||||||
# % Suorittaa globaalien muuttujien muutokset, kun yksil<69> ind
|
# % Suorittaa globaalien muuttujien muutokset, kun yksil<69> ind
|
||||||
# % on siirret<65><74>n koriin i2.
|
# % on siirret<65><74>n koriin i2.
|
||||||
|
|
||||||
i1 <- PARTITION[ind]
|
i1 <- PARTITION[ind]
|
||||||
PARTITION[ind] <- i2
|
PARTITION[ind] <- i2
|
||||||
|
|
||||||
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
||||||
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
||||||
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - sum[diffInCounts]
|
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - rowSums(diffInCounts)
|
||||||
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + sum[diffInCounts]
|
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + rowSums(diffInCounts)
|
||||||
|
|
||||||
POP_LOGML[c(i1, i2)] <- computePopulationLogml(
|
POP_LOGML[c(i1, i2)] <- computePopulationLogml(
|
||||||
c(i1, i2), adjprior, priorTerm
|
c(i1, i2), adjprior, priorTerm
|
||||||
|
|
@ -28,8 +27,8 @@ updateGlobalVariables2 <- function(i1, i2, diffInCounts, adjprior, priorTerm) {
|
||||||
|
|
||||||
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
||||||
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
||||||
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - sum[diffInCounts]
|
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - rowSums(diffInCounts)
|
||||||
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + sum[diffInCounts]
|
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + rowSums(diffInCounts)
|
||||||
|
|
||||||
POP_LOGML[i1] <- 0
|
POP_LOGML[i1] <- 0
|
||||||
POP_LOGML[i2] <- computePopulationLogml(i2, adjprior, priorTerm)
|
POP_LOGML[i2] <- computePopulationLogml(i2, adjprior, priorTerm)
|
||||||
|
|
@ -51,8 +50,8 @@ updateGlobalVariables3 <- function(
|
||||||
|
|
||||||
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
COUNTS[, , i1] <- COUNTS[, , i1] - diffInCounts
|
||||||
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
COUNTS[, , i2] <- COUNTS[, , i2] + diffInCounts
|
||||||
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - sum[diffInCounts]
|
SUMCOUNTS[i1, ] <- SUMCOUNTS[i1, ] - rowSums(diffInCounts)
|
||||||
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + sum[diffInCounts]
|
SUMCOUNTS[i2, ] <- SUMCOUNTS[i2, ] + rowSums(diffInCounts)
|
||||||
|
|
||||||
POP_LOGML[c(i1, i2)] <- computePopulationLogml(
|
POP_LOGML[c(i1, i2)] <- computePopulationLogml(
|
||||||
c(i1, i2), adjprior, priorTerm
|
c(i1, i2), adjprior, priorTerm
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue