Мой навык R все еще находится в младенчестве, и я пытаюсь перебрать расчет, но не могу найти правильное решение.
Я хочу выполнить следующую операцию 30 раз
l1 = kak[dat1[[1]]$d1,dat1[[1]]$d2,tl] #1
l2 = kak[dat1[[2]]$d1,dat1[[2]]$d2,tl] #2
................................
l30 = kak[dat1[[30]]$d1,dat1[[30]]$d2,tl] #30
# then cbind each
cbind(l1,l2,...,l30)
В каждом случае [[i]] должно принимать одно и то же значение. Вместо того чтобы делать это 30 раз, я решил написать функцию, которая, похоже, не работает.
Вот функция, которую я пытался написать:
dat1 <- split(dat,dat$group) ##group runs from 1:30
#dat has three column group, d1 and d2. d1 and d2 are numeric
nw <- 0
for(i in 1:length(dat1)){
# str(kak) num [1:360, 1:180, 1:830]
# str(tl) int [1:84] 754 ...
nw =kak[dat1[[i]]$d1,dat1[[i]]$d2,tl]
}
Я попытался найти подобный вопрос, но безуспешно. Любой, у кого есть решение или идея существующего потока, который решил похожую проблему, должен указать мне правильное направление.