3
У меня есть следующий код, который я выполняю, используя цикл for. Есть ли способ сделать то же самое без цикла for?Избегайте цикла в операции нарезки
first_list <- c(1,2,3, rep(1,5), rep(2,5), rep(3,5), rep(4,5))
print(first_list)
[1] 1 2 3 1 1 1 1 1 2 2 2 2 2
[1] 3 3 3 3 3 4 4 4 4 4
breaks <- c(rep(1,3), rep(5,4))
values <- vector()
i <- 1
prev <- 1
for (n in breaks){
values[i] <- sum(first_list[prev:sum(breaks[1:i])])
i <- i + 1
prev <- prev + n
}
print(values)
[1] 1 2 3 5 10 15 20
Цель петли взять первые три элемента списка, а затем добавить к этому списку суммы из следующих четырех наборов из 5
Это просто ... некоторые данные. Лол. Я отредактирую свой вопрос и просто слейте образец в конце в исходный код. – wesanyer
У вас есть код? Это привело к «1 2 3 25 25 NA NA» – Khashaa
Хм, мой код работает, но я не вводил его правильно. Я исправлю это здесь. – wesanyer