Advertisement
celestialgod

Untitled

Jul 13th, 2017
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
R 0.62 KB | None | 0 0
  1. obj <- function(x, g, np){
  2.   mean((tapply(g, x, sum) - sum(g) / np)^2)
  3. }
  4.  
  5. gg <- sample(1:30, 2e3, TRUE)
  6. numPack <- 20
  7.  
  8. idx <- matrix(NA, numPack, length(gg) / numPack)
  9. for (i in 1:ncol(idx)) {
  10.   if (i %% 2 == 0) {
  11.     idx[ , i] <- numPack:1
  12.   } else {
  13.     idx[ , i] <- 1:numPack
  14.   }
  15. }
  16.  
  17. obj(as.vector(idx), sort(gg), numPack) # 10432.6
  18.  
  19. tapply(sort(gg), as.vector(idx), sum)
  20. #    1    2    3    4    5    6    7    8    9   10   11   12   13   14   15   16   17   18   19   20
  21. # 1532 1532 1533 1533 1532 1535 1536 1533 1533 1534 1536 1535 1535 1532 1532 1532 1532 1531 1531 1531
  22. sum(gg) / numPack # 1533
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement