Значение выводится как число после цикла, но когда я добавляю его в список, оно добавляет 0? - PullRequest
0 голосов
/ 30 сентября 2019

Я инициализирую список размером 100 и хочу 100 раз пройти цикл, который выполняет оператор ifelse, который, если он равен true, добавляет +1 к значению оценки, а затем добавляет это значение в список. Вот мой код:

fwd_sizes = numeric(100)
for (i in 1:100) {
  ...
  new_coef <- coef(regfit.fwd,which.min(val.errors), complete=TRUE)
  # this outputs a list of up to 9 coefficients
  # below is the main part of the code I'm having issues with:
  size = 0
  for (item in new_coef) {
    size <- ifelse(abs(item) > 10**-3, size+1, size)
  }
  # if I print(size) after this loop, I get an actual number not 0
  fwd_sizes[i] = size

Если я выхожу из цикла и выполняю

print(fwd_sizes)

, он возвращает список (почти полностью) 0, который, как я знаю, неверен на основании сообщений печатиизнутри для цикла. Я также пытался использовать обычное выражение if вместо ifelse, но у меня возникла та же проблема. Чего мне не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...