我正在研究http://cran.r-project.org/doc/contrib/Krijnen-IntroBioInfStatistics.pdf上的一个极值问题 Pevsner(2003,p.103)给出了一个有趣的极值分布
我尝试从标准正态分布生成样本(大小为1000)并重复1000次。然后,从这些最大值中减去给定函数,并除以bn,其中
fn< - exp(-n)*exp(-exp(-n))
< - sqrt(2*log(n)) - 0.5*(log(log(n))+log(4*pi))*(2*log(n))^(-1/2)
bn< - (2*log(n))^(-1/2)
> my.stat <-NULL
> for (i in 1:1000) {
+ n <- rnorm(1000)
+ fn <- exp(-n)*exp(-exp(-n))
+ an <- sqrt(2*log(n)) - 0.5*(log(log(n))+log(4*pi))*(2*log(n))^(-1/2)
+ bn <- (2*log(n))^(-1/2)
+ my.stat <- c(my.stat, sum(sum(fn-an)/bn)))
> par(mfrow=c(2,2))
> hist(my.stat,freq=FALSE,main="histogram of 1000 M",xlab="M")
错误:找不到对象'fn'????我更关心如何处理
+ my.stat <- c(my.stat, sum(sum(fn-an)/bn)))
部分在循环中,因为我将所有样本值存储在矢量my.stat中。并尝试在每个循环期间计算(fn-an)/ bn。
我想我的问题是有没有更好的方法,我可以每次在我的for循环中添加(fn-an)/ bn到我的向量?基本上,我希望my.stat存储所有(fn-an)/ bn值。谢谢。