[28e211]: / R / bootstrap.R

Download this file

21 lines (19 with data), 505 Bytes

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
bootstrap <- function(data, n_reps) {
results <- numeric(n_reps)
n <- nrow(data)
i <- matrix(sample(n, n * n_reps, replace = TRUE), n_reps, n)
freqs <- t(apply(i, 1, tabulate, ncol(i)))
for (rep in seq_len(n_reps)) {
samp <- freqs[rep, ]
jac <- JS(data, samp)
results[rep] <- mean(jac)
}
return(results)
}
#' @importFrom vegan vegdist
JS <- function(data, indices) {
d <- data[indices, ]
jac <- vegan::vegdist(d, method = "jaccard")
jac1 <- 1 - jac
return(mean(jac1))
}