From ec03a04507fabdce03db752a59a772d7027a0bc5 Mon Sep 17 00:00:00 2001 From: Waldir Leoncio Date: Mon, 9 Nov 2020 09:06:45 +0100 Subject: [PATCH] Translated laskeOsaDist --- R/indMix.R | 20 -------------------- R/laskeOsaDist.R | 19 +++++++++++++++++++ 2 files changed, 19 insertions(+), 20 deletions(-) create mode 100644 R/laskeOsaDist.R diff --git a/R/indMix.R b/R/indMix.R index 3a66cee..a070ce5 100644 --- a/R/indMix.R +++ b/R/indMix.R @@ -610,26 +610,6 @@ indMix <- function(c, npops, dispText) { # end # end -# %---------------------------------------------------------------------------- - - -# function dist2 = laskeOsaDist(inds2, dist, ninds) -# % Muodostaa dist vektorista osavektorin, joka sis�lt�� yksil�iden inds2 -# % v�liset et�isyydet. ninds=kaikkien yksil�iden lukum��r�. - -# ninds2 = length(inds2); -# apu = zeros(nchoosek(ninds2,2),2); -# rivi = 1; -# for i=1:ninds2-1 -# for j=i+1:ninds2 -# apu(rivi, 1) = inds2(i); -# apu(rivi, 2) = inds2(j); -# rivi = rivi+1; -# end -# end -# apu = (apu(:,1)-1).*ninds - apu(:,1) ./ 2 .* (apu(:,1)-1) + (apu(:,2)-apu(:,1)); -# dist2 = dist(apu); - # %--------------------------------------------------------- # function T = cluster_own(Z,nclust) diff --git a/R/laskeOsaDist.R b/R/laskeOsaDist.R new file mode 100644 index 0000000..1ea9495 --- /dev/null +++ b/R/laskeOsaDist.R @@ -0,0 +1,19 @@ +laskeOsaDist <- function(inds2, dist, ninds) { + # % Muodostaa dist vektorista osavektorin, joka sis�lt�� yksil�iden inds2 + # % v�liset et�isyydet. ninds=kaikkien yksil�iden lukum��r�. + + ninds2 <- length(inds2) + apu <- zeros(nchoosek(ninds2, 2), 2) + rivi <- 1 + for (i in 1:ninds2-1) { + for (j in i+1:ninds2) { + apu[rivi, 1] <- inds2[i] + apu[rivi, 2] <- inds2[j] + rivi <- rivi + 1 + } + } + apu <- (apu[, 1]-1) * ninds - apu[, 1] / 2 * + (apu[, 1]-1) + (apu[, 2] - apu[, 1]) + dist2 <- dist(apu) + return(dist2) +} \ No newline at end of file