我试图在R中生成一些二维Halton序列,并使用randtoolsbox
包。似乎这个函数默认选择2和3作为主要基础,但我想用其他函数生成序列。文档没有说明(据我所知)任何设置此选项的方法。
是否有人知道使用randtoolsbox
或其他软件包在R中根据用户选择的素数基数生成Halton序列的方法?
答案 0 :(得分:0)
所以,我最终只是编写了我自己的函数。对于超级大gHalton <- function(n, prime) {
# define function which generates value of halton
# sequence at given n
halton_single_number <- function(n, prime) {
n_0 <- n
hn <- 0
f <- 1/prime
while(n_0 > 0) {
n_1 <- floor(n_0/prime)
r <- n_0 - n_1*prime
hn <- hn + f*r
f = f/prime
n_0 = n_1
}
return(hn)
}
# create 0 vector of desired length
vector <- rep(0, n)
# fill vector
for(i in 1:n) {
vector[i] <- halton_single_number(i, prime)
}
return(vector)
}
来说,它可能不会很快,但它允许你选择自己的基地,无论如何:
Picasso.with(MainActivity.mContext).load(file).fit().centerCrop().into(viewHolder.imgThumbnail);
当然欢迎其他答案或更有效的功能。无论如何,这对未来的某个人来说可能会有用。