2016-04-05 8 views
0

hmm.discnp kullanıyorum .

#Reading the csv file 
corpus1<-read.csv("C:/Users/harspath/Downloads/Personal/RData.csv", header = TRUE) 
good_data<- as.list(corpus1) 
#Defining Libraries 
library (HMM) 
require(hmm.discnp) 
#Defining states i.e. End State and symbols i.e. the observations 
states=c("Buying", "Not Buying") 

symbols=c("ID", "Device ID","DeviceOSVector","MobileBrandVector","BrowserVector","SearchValueVector","TimeOnPage","NoOfCicks","NoOfScrolls","PageLoadTime","TaskComplete") 

hmm1 <- initHMM (states, symbols,startProbs=NULL,transProbs=NULL, emissionProbs=NULL) 

tpm<-hmm1$transProbs 

rho<-hmm1$emissionProbs 

my_hmm = hmm(good_data,par0 = list(tpm,rho),stationary=FALSE) 

# transition probability matrix 
my_hmm$tpm 
# output probabilities 
my_hmm$Rho 
# initial probabilities (don't know/know) 
my_hmm$ispd 

cevap

0

Bu düzeltmek gerekir:

my_hmm = hmm(good_data,par0 = list(tpm,Rho = rho),stationary=FALSE) 
kütüphane ve ben HMM içine benim verileri dahil çalışıyorum ve bu hatadan yukarıda bana veriyor R. Hmm kütüphanesi ile birleştirerek İşte kod

OR:

Rho<-hmm1$emissionProbs 
my_hmm = hmm(good_data,par0 = list(tpm,Rho),stationary=FALSE) 

Buradaki mantık, par0 bağımsız değişkeninin adlandırılmış bir liste beklemesidir. Adlar tpm ve Rho olmalıdır (büyük harf ilk harfi). Ancak, rho (küçük harf) yazdınız.

par0

bileşenleri TPM (geçiş olasılığı matris) ve Rho ile, model parametrelerinin başlangıç ​​değerleri isteğe bağlı bir (isimli) listesi: ?hmm kaynaktan. Matris Rho, gizli Markov zincirinin durumu göz önüne alındığında gözlemlerin yvalde her bir değerde alması olasılığını belirtir. Rho sütunları durumlara karşılık gelir, satırlar yval değerlerine karşılık gelir.

hata olarak

, sen hmm aşağıdaki kodu olduğunu görebilirsiniz:

if (nval != nrow(par0$Rho)) *something* 

Yani, par0$Rho bakmaya çalışır. Bunu yapmadığınızdan, argument is of length zero hatasını aldınız.

+0

Bunu göreceğim. Verileri R'deki gözlem sırasına nasıl dönüştürdüğümü söyleyebilir misiniz? –

+0

Bu çok geniş bir soru. Bunu yapmak için denediğin şeyler de dahil olmak üzere birçok paket var. Paketlerin hiçbirine aşina değilim, ama eğer öğretici hmm r 'için google eğer bazı şeyler mevcut gibi görünüyor. – Laterow

İlgili konular