Условная вероятность с бинарными переменными

У меня есть этот набор:

    1 2 3 4
r01 1 0 1 1
r02 1 1 0 1
r03 0 0 1 0
r04 0 0 1 0

Код:

initial <- data.frame(c(1,1,0,0), c(0,1,0,0), c(1,0,1,1),c(1,1,0,0), row.names = c("r01","r02","r03","r04"))
colnames(initial) <- c(1:4)

Мне нужно получить условную вероятность, например, если я выберу r03 в качестве выбранного объекта, условная таблица вероятностей с r01 будет:

          |r03=0 |r03=1
    r01=0 | 1/3  | 0/1
    r01=1 | 2/3  | 1/1

Другой пример, если я выберу r03 и оценю r02:

          |r03=0 |r03=1
    r02=0 | 0/3  | 1/1
    r02=1 | 3/3  | 0/1

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


person Draggluon    schedule 13.11.2017    source источник


Ответы (1)


Я думаю, что вы ищете это:

initial <- data.frame(c(1,1,0,0), c(0,1,0,0), c(1,0,1,1),c(1,1,0,0), row.names = c("r01","r02","r03","r04"))
colnames(initial) <- c(1:4)

tin <- data.frame(matrix(t(initial), ncol = 4, byrow = FALSE))
colnames(tin) <- rownames(initial)

tab <- table(tin$r01, tin$r03) #here specify values and get count
prop.table(tab,2)

Вы также можете добавить немного rownames i colnames

РЕДАКТИРОВАТЬ: фиксированная вероятность и созданная матрица по столбцам

person franiis    schedule 13.11.2017
comment
Спасибо за ответ, но он правильный? Я проверил это и для r03 = 0 и r01 = 0 я получаю 0 и правильное значение 1/3 = 0,333... - person Draggluon; 13.11.2017