Нецелочисленная последовательность для l oop в R - PullRequest
1 голос
/ 13 июля 2020

Для приведенного ниже кода мне нужна нецелочисленная последовательность в R. Поскольку, когда я запускаю следующий код, я получаю сообщение об ошибке «Ошибка в списке данных [[j]] <- DF1: попытаться выбрать менее одного элемента в integerOneIndex "</p>

datalist = list()
for (j in seq(0, 1, 0.125)){
  DF1 <- do.call(cbind, lapply(seq(5,60,5), function(i) setNames(data.frame(rlnorm(n=10000, log(i^2 / sqrt((i*j)^2 + i^2)), sqrt(log(1 + ((i*j)^2 / i^2))))), i)))
  DF1$CV <- j
  datalist[[j]] <- DF1
}
DF2 = do.call(rbind, datalist)

1 Ответ

2 голосов
/ 13 июля 2020

Результат seq не является целым числом. Лучше l oop над последовательностью вектора.

v1 <- seq(0, 1, 0.125)
datalist <- vector('list', length(v1))
for(j in seq_along(v1)) {
      DF1 <- do.call(cbind, lapply(seq(5,60,5), function(i) setNames(data.frame(rlnorm(n=10000, log(i^2 / sqrt((i*j)^2 + i^2)), sqrt(log(1 + ((i*j)^2 / i^2))))), i)))
 DF1$CV <- v1[j]
 datalist[[j]] <- DF1
  }
         
...