HMM Ошибка в if (d <delta) {: пропущенное значение, где требуется TRUE / FALSE
У меня есть некоторые проблемы с функцией viterbiTraining из пакета HMM. Я попытался использовать это на довольно простой хм и вектор наблюдений.
Вот код:
Emisije<-rep("IntervalC",length(Cl1.res))
Emisije[IntervalA[,1]]<-"IntervalA"
Emisije[IntervalB[,1]]<-"IntervalB"
Вектор Emisije выглядит так:
голова (Emisije)
[1] "IntervalA" "IntervalA" "IntervalA" "IntervalC" "IntervalB" "IntervalA"
startProbs<-c(0.6873065,0.3126935)
transProbs<-matrix(c(0.8, 0.7, 0.2,0.3),ncol=2)
emissionProbs<-matrix(rep(1/3,6),ncol=3)
stanji<-initHMM(c("NizkaVar", "VisokaVar"), c("IntervalA", "IntervalB",
"IntervalC"), startProbs, transProbs, emissionProbs)
После запуска все работает, кроме функции viterbiTraining, которая дает следующий результат:
viterbiTraining (stanji, Emisije)
Ошибка в if (d
Даже похожая функция baumWelch, которая принимает те же параметры, работает без ошибок, поэтому я действительно не понимаю, что здесь не так.
Может кто-нибудь объяснить мне, что я делаю не так? Заранее спасибо.