Вы ничего не назначаете с { result[[i]][j]==TRUE}}
. Вам не нужно { result[[i]][j]=TRUE}}
или { result[[i]][j] <- TRUE}}
?
ОБНОВЛЕНИЕ: возможно, в первый раз ваши условия выполняются, когда i = 3 и j = 5, например. Пустой список еще ничего не содержит, поэтому он не может назначить что-либо в 3-й вложенный список и его 5-й элемент. Вы можете создать «целевой» список раньше и заполнить его NA, как это, и запустить цикл for впоследствии:
result <- list(rep(NA,10),rep(NA,10),rep(NA,10),rep(NA,10),rep(NA,10),rep(NA,10),rep(NA,10),rep(NA,10),rep(NA,10),rep(NA,10))