Я пытаюсь выполнить домашнюю работу для одного из моих классов, который недавно представил R. Нам дали ограниченное кодирование и небольшое руководство для домашней работы, что усложняло поиск полезного количества кода. Вопрос задается: заново запустите симуляции с лямбда-значениями 1,00, 1,02, 0,99, 1,01 и 1,02 (создайте новый вектор для r) и создайте третью гистограмму.
Здесьпервый бит кода, который был дан для выяснения раздела для A:
options("scipen"=100, "digits"=5)
#This code is simply in place so that your results are given in 'normal' numbers
#and not scientific notation. RUN IT
# Below is your code to run your population simulations
#######part a. Setting up your Variables
r <- c(1.00, 1.98, 1.02, 0.92, 0.53)
n0 <- 29
n = 100
result = rep(NA, n)
for (i in 1:n){
popsize <- n0
for(time in 2:100){
rtest = sample(r, 1, replace=TRUE)
popsize[time]=popsize[time-1]*rtest
}
result[i] <- popsize[100]
bins2 <- c(seq(from = 0, to = 500000, by = 25000))
hist(pop1, breaks = 20, xlab = "Population size", main = "Part A. Variable Lambdas", ylim =c(0, 100))
Теперь вот код, который я пытаюсь использовать для части C:
r2 <- c(1.00, 1.02, 0.99, 1.01, 1.02)
n0 <- 29 #original population
n = 100 #number of simulations
result = rep(NA, n) #empty vector for year 100 of each simulation
for (i in 1:n){ #defining the start of the first loop
popsize <- n0 #renaming the original population
for(time in 2:100){ #second loop, to run each simulation for 100 years
rtest = sample(r, 1, replace=TRUE) #randomly selecting 1 of the 5 lambdas for each year
popsize[time]=popsize[time-1]*rtest #calculating lambda for the next 'step'/year
} #closing the second loop
result[i] <- popsize[100] #putting each simulations year 100 into vector
} #closing the first loop
hist(r2, breaks = 20, xlab = "Population size", main = "Part C. Variable Lambdas", ylim =c(0, 100))
Это действительно производит гистограмму, но гистограмма действительно не имеет смысла по сравнению с гистограммой для A. У кого-нибудь есть какие-либо идеи, что я делаю неправильно с моим кодированием?