Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何使用引导法估计0.1%的标准误差?_R_Statistics - Fatal编程技术网

R 如何使用引导法估计0.1%的标准误差?

R 如何使用引导法估计0.1%的标准误差?,r,statistics,R,Statistics,我计算了波士顿数据集中medv列的第十个百分位的估计值。 我想用bootstrap计算0.1%的标准误差。我写了这个函数来计算它,但是它没有给我正确的值 你能告诉我一种使用自举法计算某个百分位的标准误差的方法吗 注意:我知道程序包“boot”,但我想使用一个自定义函数 library(MASS) data(Boston) μ.hat0.1 <- quantile(medv, c(0.1)) set.seed(20218) boot <- function(times, data

我计算了波士顿数据集中medv列的第十个百分位的估计值。 我想用bootstrap计算0.1%的标准误差。我写了这个函数来计算它,但是它没有给我正确的值

你能告诉我一种使用自举法计算某个百分位的标准误差的方法吗

注意:我知道程序包“boot”,但我想使用一个自定义函数

library(MASS)
data(Boston)
μ.hat0.1 <- quantile(medv, c(0.1))  

set.seed(20218)
boot <- function(times, data=Boston$medv) {
  boots <- rep(NA, times)
  for (i in 1:times) {
    boots[i] <- quantileSE(sample(data, length(data), replace=TRUE),p=0.1)
  }
  boots
}
mean(boot(times=1000))
库(MASS)
数据(波士顿)
μ、 hat0.1

library(MASS)
data(Boston)
μ.hat0.1 <- quantile(Boston$medv, c(0.1))  

set.seed(20218)
sd(replicate(1000,quantile(sample(Boston$medv,replace=TRUE),p=0.1)))
[1] 0.5209839
库(MASS)
数据(波士顿)

μ、 hat0.1此代码未给出正确的answer@Mo.Muse这个答案给出了第10百分位的标准误差,你确定这是你的问题吗?你为什么说这不是正确的答案?你能提供什么是“正确”答案以及你是如何得到它的吗?是的,我的问题是关于第10百分位的标准误差。正确答案约为0.488873。我是用boot函数得到的,但我想用一个自定义函数来计算它。@Mo.Muse但是你是怎么得到这个数字的?这个数字也是通过模拟得到的吗?如果是这样,您就不能期望相同的结果,即使使用相同的种子,因为实现可能会有很大的不同。如果我将步数增加到100万,结果将变为0.5021308,这似乎与我的想法相近。我使用了1000个引导样本来获得这个数字。