Guest User

Untitled

a guest
Oct 16th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.51 KB | None | 0 0
  1.  
  2. volta.cokri2 <- function(mat.cokri, num.simu, retorna.tudo=FALSE, int.conf=0.95){
  3. ## Author: Wagner Bonat / Ana Beatriz Martins / Paulo Justiniano
  4. ## Modified for parallel and better use of RAM by: Benilton Carvalho
  5. require(parallel)
  6. nlinhas <- dim(mat.cokri[[1]])[1]
  7. f <- function(i){
  8. g <- mvrnorm(n=1, mat.cokri[[1]], mat.cokri[[2]])
  9. seq1 <- seq(1, nlinhas, by=2)
  10. gerado <- data.frame(g[seq1], g[seq1+1L])
  11. agl(gerado)
  12. }
  13. compos2 <- do.call(cbind, mclapply(1:num.simu, f))
  14. dim.vetor <- num.simu * 3
  15. sy1 <- seq(1, dim.vetor, by=3)
  16. amostra1 <- as.matrix(compos2[, sy1], ncol=num.simu)
  17. amostra2 <- as.matrix(compos2[, sy1+1L], ncol=num.simu)
  18. amostra3 <- as.matrix(compos2[, sy1+2L], ncol=num.simu)
  19. if (retorna.tudo) {
  20. retorna <- list(amostra1, amostra2, amostra3)
  21. return(retorna)
  22. }
  23. if (!retorna.tudo) {
  24. med1 <- rowMeans(amostra1)
  25. med2 <- rowMeans(amostra2)
  26. med3 <- rowMeans(amostra3)
  27. probs <- c(1-int.conf, int.conf)
  28. q1 <- t(apply(amostra1, 1, quantile, prob=probs))
  29. q2 <- t(apply(amostra2, 1, quantile, prob=probs))
  30. q3 <- t(apply(amostra3, 1, quantile, prob=probs))
  31. quantis <- cbind(q1, q2, q3)
  32. quantis <- data.frame(quantis)
  33. names(quantis) <- c("LI Areia", "LS Areia", "LI Silte", "LS Silte", "LI Argila", "LS Argila")
  34. resultado <- list(preditos=data.frame(Areia=med1, Site=med2, Argila=med3), intervalo=quantis)
  35. return(resultado)
  36. }
  37. }
Add Comment
Please, Sign In to add comment