如何解决如何用替换估计 R-sample 中的参数
我有一个 txt 文件,里面的数字看起来像这样(但有 100 个数字)-
[1] 7.1652348 5.6665965 4.4757553 4.8497086 15.2276296 -0.5730937
[7] 4.9798067 2.7396933 5.1468304 10.1221489 9.0165661 65.7118194
[13] 5.5205704 6.3067488 8.6777177 5.2528503 3.5039562 4.2477401
[19] 11.4137624 -48.1722034 -0.3764006 5.7647536 -27.3533138 4.0968204
我需要从这个分布中估计 MLE theta 参数 -
[![这是我的发布][1]][1]
我需要从 1000 个观察样本中估计 theta 并替换,并保存样本,并做一个历史记录。
如何从我的样本中估计 theta?我没有关于正常干扰的信息。
我写了这样的东西-
data<-read.table(file.choose(),header = TRUE,sep= "")
B <- 1000
sample.means <- numeric(data)
sample.sd <- numeric(data)
for (i in 1:B) {
MySample <- sample(data,length(data),replace = TRUE)
sample.means <- c(sample.means,mean(MySample))
sample.sd <- c(sample.sd,sd(MySample))
}
sd(sample.sd)
但它不起作用..
解决方法
这个问题包含多个不同的问题,所以让我们一步一步地解决每个问题。
首先,您需要从总体中随机抽取一个样本(有替换)。假设您的 100 个人口观察位于一个名为 pop
的向量中。
rs <- sample(pop,1000,replace = True)
为您提供随机样本向量。如果你想保存它,你可以以多种格式将它写入你的磁盘,所以我只会建议一些相关的问题 (How to Export/Import Vectors in R?)。
在第二步中,您可以使用 mle()
-package (https://stat.ethz.ch/R-manual/R-devel/library/stats4/html/mle.html) 的 stats4
-function 并明确指定目标函数。
但是,您问题的第二部分更像是一个统计/概念问题,而不是与 R 相关的 IMO。
尝试了解 MLE 的实际作用。您不需要正态分布的变量。 MLE 背后的想法是以这样一种方式选择 theta,即在结果分布下随机样本是最有可能的。如果您想要更直观的方法,请查看 https://en.wikipedia.org/wiki/Maximum_likelihood_estimation 以了解更多详细信息或一些 YouTube 视频。
我假设,在您的任务描述中,说明 f(x|theta) 是条件联合密度函数,并且观测值 x 是 iir?
在这种情况下,您想要做的是选择 theta,以使观测值 x 和参数 theta 之间的平方差最小化。
为了您的统计理解,在这种情况下,对方程执行对数线性化而不是处理非线性函数是有意义的。
最小化平方差等效于最大化对数变换函数,因为总和为负( 乘积在分母中)并且对数以及 +1 仅是线性变换。
这给您留下了最大化问题:
和一阶条件:
显然,您还必须通过二阶条件检查您实际上是否在处理最大值,但为了简单起见,我将在此阶段省略它。
R 中的算法只是解决这个最大化问题。
希望这有助于您的理解。也许一些更聪明的人可以提供一些额外的意见。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。