[英]How to bootstrap with lapply? bootstrap error with boot() in R
我在嘗試執行下面的代碼時收到錯誤"Error in statistic(data, original, ...) : unused argument (original)"
。 具體來說,我正在嘗試應用一個函數並為每個 plot# 引導這些結果。 我在這里錯過了一些簡單的東西嗎?
library(codyn) # has sample dataset called pplots
library(boot)
str(pplots)
stability <- function(x){
mean(multivariate_change(x,
species.var = "species",
time.var = "year",
abundance.var = "relative_cover",
replicate.var = "plot")$composition_change)
}
boot_obj <- lapply(splitspplots,boot,statistic = stability,R = 20)
boot_obj <- lapply(splitspplots,myBootFun)
myBootFun <- function(x,i) {
lapply(x[i],boot, statistic=stability, R = 10)
}
myBootFun <- function(x,i) {
boot(x[i], statistic=stability, R = 10)
}
splitspplots <- split(pplots,pplots$plot)
lapply(splitspplots, print(myBootFun))
我想了一個不同的方法來做到這一點,也行得通。
我使用 for 循環在不同的組/站點之間循環,但我沒有在這里展示。 這是引導程序代碼。
data_sampled <- data_grouped %>%
group_by(SITE_ID) %>%
crossing(id = seq(100)) %>% # create replicate dataframes
sample_n(size = n(), replace = T) # sample dataframes
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.