Translated function, added tests

This commit is contained in:
Waldir Leoncio 2020-01-14 13:50:37 +01:00
parent c72d2b6896
commit 9e434c25e5
5 changed files with 55 additions and 17 deletions

View file

@ -520,20 +520,4 @@ admix1 <- function(tietue) {
# end
# pointer = pointer+1;
# end
# end
# %--------------------------------------------------------------------------
# function osuusTaulu = suoritaMuutos(osuusTaulu, osuus, indeksi)
# % Päivittää osuusTaulun muutoksen jälkeen.
# global COUNTS;
# npops = size(COUNTS,3);
# i1 = rem(indeksi,npops);
# if i1==0, i1 = npops; end;
# i2 = ceil(indeksi / npops);
# osuusTaulu(i1) = osuusTaulu(i1)-osuus;
# osuusTaulu(i2) = osuusTaulu(i2)+osuus;
# end

19
R/suoritaMuutos.R Normal file
View file

@ -0,0 +1,19 @@
#' @title suoritaMuutos
#' @description Päivittää osuusTaulun muutoksen jälkeen.
#' @param osuusTaulu Percentage table?
#' @param osuus percentage?
#' @param indeksi index
#' @param COUNTS counts
#' @export
suoritaMuutos <- function (osuusTaulu, osuus, indeksi, COUNTS = matrix(0)) {
npops <- ifelse(is.na(dim(COUNTS)[3]), 1, dim(COUNTS)[3])
i1 <- indeksi %% npops
if (is.na(i1) | i1 == 0) i1 <- npops
i2 <- ceiling(indeksi / npops)
osuusTaulu[i1] <- osuusTaulu[i1] - osuus
osuusTaulu[i2] <- osuusTaulu[i2] + osuus
return (osuusTaulu)
}