ourMELONS/R/computeCounts.R

26 lines
697 B
R
Raw Permalink Normal View History

2022-07-28 11:16:59 +02:00
computeCounts <- function(cliques, separators, npops, PARTITION) {
ncliq <- size(cliques, 1)
nsep <- size(separators, 1)
cliqPartition <- zeros(ncliq, size(cliques, 2))
sepPartition <- zeros(nsep, size(separators, 2))
apuCliq <- find(cliques > 0)
apuSep <- find(separators > 0)
cliqPartition[apuCliq] <- PARTITION[cliques[apuCliq]]
sepPartition[apuSep] <- PARTITION[separators[apuSep]]
cliqcounts <- zeros(ncliq, npops)
for (i in 1:npops) {
cliqcounts[, i] <- rowSums(cliqPartition == i)
}
sepcounts <- zeros(nsep, npops)
for (i in 1:npops) {
sepcounts[, i] <- rowSums(sepPartition == i)
}
return(list(cliqcounts = cliqcounts, sepcounts = sepcounts))
}