mapleleaf
mapleleaf

Reputation: 754

subset data inside simulation for loop

I have simulated a data set 10 times and I want to split each iteration (of 100 observations) into two groups. Below is my sample script:

n_per_sim <-100
num_sims <- 10

set.seed(12345)
sim_output_1 <- rep(NA, times = num_sims)
sim_output_2 <- rep(NA, times = num_sims)
#This creates a vector of 10 NA values`

for (sim_number in 1:num_sims){
data <- rbinom(n=n_per_sim, 1, 0.5)
group1 <- data[1:50,]
group2 <- data[50:100,]
sim_output_1[sim_number] <- group1
sim_output_2[sim_number] <- group2 
}
sim_output_1 
sim_output_2 

I know the indexing does not work at the moment, but that is what I am trying for.

Upvotes: 1

Views: 42

Answers (1)

Ronak Shah
Ronak Shah

Reputation: 388982

I am not quite sure what you are trying to do statistically. However, programming wise if you declare sim_output_1 and sim_output_2 as list it should work.

n_per_sim <-100
num_sims <- 10
sim_output_1 <- vector("list", length = num_sims)
sim_output_2 <- vector("list", length = num_sims)

for (sim_number in 1:num_sims){
  data <- rbinom(n=n_per_sim, 1, 0.5)
  group1 <- data[1:50]
  group2 <- data[50:100]
  sim_output_1[[sim_number]] <- group1
  sim_output_2[[sim_number]] <- group2 
}

Upvotes: 1

Related Questions