Я очень надеюсь, что вы можете помочь мне с проблемой, которую я не могу решить самостоятельно. Я пытаюсь запрограммировать базовую модель урны для веб-приложения. Я хочу рассчитать вероятности конкретных случайных событий в соответствии с разными методами рисования в модели с двумя разными цветами.
Состав урны (красные и черные шары) задается вектором a ‹-c(число_красное, число_черное)
Случайное событие указывается в другом векторе, скажем, b‹-c("красный","красный","черный","красный") или любая другая комбинация красных и черных шаров
Теперь нужно вычислить вероятность события (вектор b), когда шары 1) заменены в урне, и порядок имеет значение 2) НЕ заменен в урне, и порядок имеет значение 3) НЕ заменен в урне, и порядок не имеет значения 4) заменяется в урне, и порядок не имеет значения
Я придумал несколько разных идей, но ни одна из них не сработала... Сначала я написал функции, чтобы определить, сколько разных комбинаций можно нарисовать в каждом из сценариев.
stan = function(n,x) {return(n^x)}
perm = function(n, x) {return(factorial(n) / factorial(n-x))}
komb = function(n, x) {return(factorial(n) / (factorial(n-x)*factorial(x)))}
komb2 = function(n, x) {return(factorial(n+x-1) / (factorial(n-1)*factorial(x)))}
Но тогда я толком не знал, как их применять для расчета окончательных вероятностей.
Я также экспериментировал с циклами for, чтобы эмулировать древовидную диаграмму, но это стало для меня слишком сложным. Например:
c <- c(number_red/(number_red+number_black), number_red/(number_red+number_black))
b <- c("red","black","red")
b[b=="red"]<-1
[b=="black"]<-2
b<-as.numeric(b)
vec<-NULL
for (i in b){
vec<-c(vec, c[i])}
prod(vec)
Подобное решение дает правильные результаты для задачи № 1, но я действительно не знаю, как применить его к другим проблемам, поскольку мне нужно будет найти способ изменить вектор c в соответствии с составом вектора b каждый раз, когда я запускаю цикл .
Конечно, я экспериментировал с разными идеями, но ни одна из них не работает. Буду очень признателен, если кто-нибудь поможет мне с моей проблемой.
Лучший, Генри
c
— это доля мячей, а в вашем текстеc
— количество мячей, не могли бы вы пояснить это? иc
также является именем внутренней функции, вам лучше выбрать другие имена. - person mt1022   schedule 20.11.2016