2014-09-03 8 views
1

Я довольно новичок как в R, так и в TraMineR и ищу какую-то помощь. Прямо сейчас у меня есть результат, полученный через класс «subsequelist». Мне нужно получить этот результирующий набор в кадр данных для дальнейших операций в R. Однако, когда я пытаюсь использовать функцию as.data.frame(), она выдает сообщение об ошибке «не может принуждать« subsekelist »класса к data.frame».Подводный лоток TraMineR в фрейм данных

Может ли кто-нибудь помочь пролить свет на то, что происходит? Спасибо заранее.

ответ

1

A subseqelist объект возвращается seqefsub и содержит несколько элементов. Список подпоследовательностей находится в компоненте subseq (список), а также поддерживает и подсчитывает в компоненте data (фрейм данных).

Вот пример того, как можно собрать все, что в data.frame:

library(TraMineR) 
data(actcal.tse) 
## creating the event sequence object 
actcal.seqe <- seqecreate(data=actcal.tse) 
## extracting frequent subsequences 
(actcal.fsubseq <- seqefsub(actcal.seqe, pMinSupport=.1)) 

## retrieving the data.frame with supports and counts 
df <- actcal.fsubseq$data 
## adding a column with the subsequence description as character strings. 
df$subseq <- as.character(actcal.fsubseq$subseq) 
df 
+0

@uspowpow Вы видите ответ? Просьба указать, было ли это полезно, и если не уточнить, что вы ожидали. – Gilbert

+0

Это было очень полезно спасибо! Я по существу использовал ваш ответ и придумал следующее. Я просто просто передал свой вывод TraMineR в виде массива, чтобы вы могли индексировать каждую категорию. После того как вы выделили каждый столбец отдельно, я просто использовал cbind(), чтобы собрать их вместе и в фрейм данных. Смотри ниже. Еще раз спасибо. temp.array <- as (object = fsubseq, Class = "array") fsubseq_path <- as (object = temp.array [3] $ subseq, Class = "character") fsubseq_support <- temp.array [ 4] $ data $ Поддержка fsubseq_count <- temp.array [4] $ data $ Count – uspowpow

 Смежные вопросы

  • Нет связанных вопросов^_^