2013-11-02 7 views
0

Я пытаюсь реплицировать график на примере в датском наборе данных, используемом в тексте Non-Life Insurance Mathematics.Применение сигма-функции в R

Я хочу создать следующую новую переменную из своего набора данных, чтобы я мог построить график. Моя самая большая проблема заключается в том, как суммировать (сигма) по w над j, учитывая, что мне нужно начинать с макс двух значений до min двух значений. У меня нет ни малейшего представления о том, как это сделать в R. Угадайте, что мне еще предстоит многому научиться в том, как делать операции в R.

Я был бы признателен, если бы некоторые из них могли дать мне полезный совет о том, как идти об этом.

Ниже уравнение в вопросе я не мог заменить сигмы знак, так что я использовал в буквальном смысле интерпретации (сумма)

1/λ(i)) = 1/(2m + 1) * sum Wj from {j=max(1,i−m) to min(n,i+m)} for m = 50. 
+1

Что такое 'Wj'? Является ли это функцией или коллекцией/вектором значений? – Hugh

+0

wj - фактическое время прибытия для наблюдений за 2000 плюс – user18143

ответ

1

Попробуйте

m = 50 
total = 0 
for (j in seq(max(1, i-m), min(n, i+m)) { 
    total = total + W[j] 
} 
total = total/(2 * m + 1) 
lambda = 1/total 

или это

m = 50 
lambda = 1/(sum(W[max(i,i-m) : min(n,i+m)])/(2 * m + 1)) 
+0

У нас нет какой-либо функции для реализации обозначения 'sigma' для суммирования ряда? –

+0

@MonaJalal Существует функция 'sum'. –

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