Похоже, что не может предсказать условные вероятности следующего состояния после контекстов, которые состоят из одного состояния, например. EX-EX
Прогнозирование условных вероятностей на основе контекстов только с одним состоянием
Рассмотрим этот код:
# Load libraries
library(RCurl)
library(TraMineR)
library(PST)
# Get data
x <- getURL("https://gist.githubusercontent.com/aronlindberg/08228977353bf6dc2edb3ec121f54a29/raw/c2539d06771317c5f4c8d3a2052a73fc485a09c6/challenge_level.csv")
data <- read.csv(text = x)
# Load and transform data
data <- read.table("thread_level.csv", sep = ",", header = F, stringsAsFactors = F)
# Create sequence object
data.seq <- seqdef(data[2:nrow(data),2:ncol(data)], missing = NA, right= NA, nr = "*")
# Make a tree
S1 <- pstree(data.seq, ymin = 0.05, L = 6, lik = TRUE, with.missing = TRUE)
# Mine the context
context <- seqdef("EX-EX")
p_context <- predict(S1.p1, context, decomp = F, output = "prob")
линии context <- seqdef("EX-EX")
выходы:
[>] 1 distinct states appear in the data:
1 = EX
Error:
[!] alphabet contains only one state
, что означает, что predict()
не может быть выполнена.
Как я могу предсказать условные вероятности следующего состояния на основе контекстов, которые имеют только 1 состояние, которое может повторяться несколько раз?
Это работает для контекстов, которые повторяют один и тот же маркер, например. 'EX-EX'. Однако контексты, которые имеют длину 1 маркер, например, 'EX' все еще не вычисляются, но здесь проблема, похоже, находится в' прогнозе() 'не в' seqdef() ' – histelheim
Для' EX', что на самом деле не является последовательностью, его вероятность - это просто ее вероятность появления в данные. Вы получите его, например, как 'seqstatf (data.seq) [" EX ", 2]/100'. – Gilbert