Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.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 用于引导样本并生成标准错误(SE)的函数_R_For Loop_Statistics Bootstrap - Fatal编程技术网

R 用于引导样本并生成标准错误(SE)的函数

R 用于引导样本并生成标准错误(SE)的函数,r,for-loop,statistics-bootstrap,R,For Loop,Statistics Bootstrap,我有100个概率与我在这里创建和显示的四个独特个体(AAA:DDD)相关 IndID <- as.factor(rep(c("AAA", "BBB", "CCC", "DDD"),25)) Prob <- runif(length(IndID),0,1) Data <- data.frame(IndID, Prob) Data <- Data[order(Data$IndID),] > head(Data) IndID Prob 1 AAA

我有100个概率与我在这里创建和显示的四个独特个体(AAA:DDD)相关

IndID <- as.factor(rep(c("AAA", "BBB", "CCC", "DDD"),25))
Prob <- runif(length(IndID),0,1)
Data <- data.frame(IndID, Prob)
Data <- Data[order(Data$IndID),]

> head(Data)
   IndID      Prob
1    AAA 0.5860417
5    AAA 0.1824266
9    AAA 0.3301014
13   AAA 0.5048122
17   AAA 0.3717195
21   AAA 0.9090825

> summary(Data)
 IndID         Prob        
 AAA:25   Min.   :0.01341  
 BBB:25   1st Qu.:0.19743  
 CCC:25   Median :0.48315  
 DDD:25   Mean   :0.50475  
          3rd Qu.:0.81789  
          Max.   :0.99805 
我的目标是:对于每个个体(AAA:DDD),我希望引导Prob,使用0.50作为截止值对它们进行离散化,并将得到的0和1相加。我想对每个AAA:DDD执行R=10(例如,仅低,但将使用实际数据重复R=10000)次,然后提取
boot()
对象的标准错误

建议如何改善我的循环以上将不胜感激。特别是如何在循环中正确地将“statistic”参数合并到
boot()


提前感谢。

对于
boot
函数,必须包含索引参数
idx

BiSum <- function(x, idx){
     IndBi <- ifelse(x[idx] >= 0.50, 1,0)
     SumIndBi <- sum(IndBi)
}

BiSum对于
boot
函数,必须包含索引参数
idx

BiSum <- function(x, idx){
     IndBi <- ifelse(x[idx] >= 0.50, 1,0)
     SumIndBi <- sum(IndBi)
}

BiSum非常感谢@TWL。添加idx非常有效。从这里包含的SE输出中可以看出,除了IndID之外,还有四个额外的0.00000。你有没有想过它们是从哪里来的?再次感谢<代码>>SE AAA BBB 0.0000000.0000000.0000000.0000000.0000002.436967 2.312056 CCC DDD EEE
2.487526 2.381884 2.497726以您的示例为例,在for循环中,您正在索引因子级别AAA-DDD,而数字向量SE没有指定名称。该函数不知道将值放在何处,只是将输出与SE向量连接起来。在再次运行for循环
names(SE)Perfect之前,必须为向量指定级别名称!谢谢。非常感谢@TWL。添加idx非常有效。从这里包含的SE输出中可以看出,除了IndID之外,还有四个额外的0.00000。你有没有想过它们是从哪里来的?再次感谢<代码>>SE AAA BBB 0.0000000.0000000.0000000.0000000.0000002.436967 2.312056 CCC DDD EEE
2.487526 2.381884 2.497726以您的示例为例,在for循环中,您正在索引因子级别AAA-DDD,而数字向量SE没有指定名称。该函数不知道将值放在何处,只是将输出与SE向量连接起来。在再次运行for循环
names(SE)Perfect之前,必须为向量指定级别名称!谢谢
Error in statistic(data, original, ...) : unused argument (original).
BiSum <- function(x, idx){
     IndBi <- ifelse(x[idx] >= 0.50, 1,0)
     SumIndBi <- sum(IndBi)
}