У меня есть интегральная функция, которая является произведением нескольких кумулятивных функций вероятности и функции плотности.Добавление функции в цикл for в R
Только для двух событий интегрирующих функций просто произведение кумулятивной вероятности и функция плотности:
function(value) pnorm(value,mean = mean2 ,sd = sigma, lower.tail = TRUE)*
dnorm(value,mean = mean1, sd = sigma)
для каждого нового события, мне нужно умножить на другую интегральную функцию вероятности. Таким образом, для трех альтернатив функция превращается в:
function(value) pnorm(value,mean = mean2 ,sd = sigma, lower.tail = TRUE)*
pnorm(value,mean = mean1,sd = sigma, lower.tail = TRUE)*
dnorm(value,mean = mean0, sd = sigma)
для четыре:
function(value) pnorm(value,mean = mean3 ,sd = sigma, lower.tail = TRUE)*
pnorm(value,mean = mean2,sd = sigma, lower.tail = TRUE)*
pnorm(value,mean = mean1,sd = sigma, lower.tail = TRUE)*
dnorm(value,mean = mean0, sd = sigma)
и так далее ...
Я пытаюсь построить цикл, который создает эту функцию на летать на любое количество событий. Я пробовал разные подходы к обобщению функции, но до сих пор ничего не работало для меня. Любые идеи о том, как я должен действовать?
Похоже, что есть некоторые проблемы с vectorising входы, как 'myfun (2: 10,1,1)' не удается. Я думаю, вы могли бы попробовать тот же подход, который я использовал для обработки входных данных (т. Е. Позволить 'pnorm' обрабатывать векторизацию самих входов) –
Tx для заметок. Я разрешаю 'pnorm' обрабатывать векторию. Я сделал un update, чтобы справиться с ситуацией. – nicola
Спасибо! Этот подход работал очень хорошо. – pantelispa