У меня есть фрейм данных, похожий на приведенный ниже.
Index_1 Index_2 Constant Outcome
1 3 5 1
2 3 6 0
1 4 7 1
Мне нужно написать уравнение для каждой строки во фрейме данных. Эти уравнения в конечном итоге будут умножены вместе для определения функции правдоподобия. Я хочу создать что-то похожее на это:
Index_1 Index_2 Constant Outcome Equation
1 3 5 1 m_1 - m_3 + 5 + e_1
2 3 6 0 m_2 - m_3 + 6 + e_2
1 4 7 1 m_1 - m_4 + 7 + e_3
Я могу заставить R распечатать уравнения, которые мне нужны, используя этот код:
for (row in 1:nrow(data)) {
mu_a <- (paste("m_",data$Index_1[row],sep=""))
mu_b <- (paste("m_",data$Index_2[row],sep=""))
e_it <- (paste("e_", row,sep=""))
print(paste(mu_a, paste("-",paste(mu_b,paste("+",paste(tradeoffs$d_lnxy[row], paste("+", e_it), sep = " "), sep = " "), sep = " "), sep = " "), sep = " "))
}
Однако, это громоздко, и я хочу каждый m_j и e_t должны быть объектом, потому что это параметры, которые будет оценивать максимальная вероятность. Я думаю, что мне нужно использовать apply, но я изо всех сил пытаюсь написать нужную мне функцию.