2016-01-21 2 views
1

я должен осуществить это суммирование в R:Двойной Суммирование в R

enter image description here

Я пытался осуществить первый экспоненциальный следующим образом:

f <- rep(0,48) 
for(i in 1:48) { 
f[i] <- exp(-sum(lambda[which(lambda<lambda[i])])-(i-1))} 

где 48 -длина лямбда. Я думаю, что это выражение выглядит нормально, но теперь моя проблема ... Как добавить второе суммирование? Я не знаю, из-за двойных децитов. Есть ли у вас какие-либо предложения? Спасибо.

ответ

1

Я не уверен, что несколько круглых скобках в вашей формуле, но что-то подобное, что должно сделать трюк:

exp(-sum(lambda[20:j]) + (j-20)) * sum(unlist(lapply(20:j, function(i) lambda[i] * exp(sum(lambda[20:i]) + i-20)))) 

В R, то проще использовать векторизации, чем цикл.

Смежные вопросы