Я пытаюсь смоделировать некоторые данные для оценки размера выборки, и мой цикл возвращает неожиданные результаты.
Я пытаюсь произвести выборку из вектора сгенерированных значений с различными числами размеров выборки, а затемСредство сцепления и стандартные отклонения для ряда симуляций.
library(MCMCglmm)
library(tidyverse)
Est <- function(n, mean, sd, lower, upper, samp_min, samp_max, samp_int, nsim){
Data <- round(rtnorm(n, mean, sd, lower, upper), digits = 0) # Create a vector to sample from
Samp_size <- seq(samp_min, samp_max, samp_int) # Create vector of sample sizes
# Set up enpty results data frames
Results_samp <- data.frame()
Results <- data.frame()
for(i in 1:nsim){ ## Loop through number of simulations
for (j in seq_along(Samp_size)) { # Loop through sample sizes
Score <- sample(Data, j, replace = TRUE)
Nsubj <- Samp_size[j]
Mean <- mean(Score, na.rm = TRUE)
SD <- sd(Score, na.rm = TRUE)
Results_samp <- rbind(Results_samp,
data.frame(
Nsubj,
Mean,
SD))
}
Results <- rbind(Results, Results_samp)
}
Results
}
Test <- Est(n = 1000, mean = 55, sd = 37, lower = 0, upper = 100,
samp_min = 5, samp_max = 20, samp_int = 5, nsim = 5)
Это создает фрейм данных с 60 строками, где я ожидаю 20 (5 симуляций с 4 размерами выборки), и мне всегда возвращают NA дляразмер выборки 5.
Кто-нибудь может увидеть, где я иду не так?
Спасибо!