R中的极值函数

时间:2015-02-06 23:23:53

标签: r

我正在研究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值。谢谢。

0 个答案:

没有答案