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, которая принимает те же параметры, работает без ошибок, поэтому я действительно не понимаю, что здесь не так.

Может кто-нибудь объяснить мне, что я делаю не так? Заранее спасибо.

0 ответов

Другие вопросы по тегам