我想使用seqST()
包的TraMineR
函数来检查一系列文本组合中文本的相对湍流。在我的数据框内,每一行(N = 65)都有一列,其中包含整个内容。要计算每种成分的湍流,我相信我首先需要(a)在数据上使用seqdef()
函数来定义序列对象,然后(b)将序列对象输入到湍流函数{{1 }}。但是,我不确定第一步如何正确格式化数据。我可以找到的大多数示例都是对生命历程的研究,其中将数据格式化为每个序列项的一列。
问题:
1)要创建一个序列对象,我需要首先格式化我的数据,以便每列包含一个组成词(而不是整个组成)吗?如果是这样,那么有什么建议最简单的方法呢?
2)是否有任何理由相信此方法a)不适用于长度可变的合成物和/或b)超过特定长度的合成物?
3)直观上来说,文本构成比大多数生命周期状态值具有更大的可变性(即词汇量可能很大)。 seqST()
是否在得出湍流,熵等值时可以可靠地考虑的可能状态值的数量上有上限?
谢谢;任何指导表示赞赏。
答案 0 :(得分:1)
下面我将说明如何使用示例数据的三个文本中的每个文本的前两个句子进行操作。我认为句子之间用句点分隔,但不处理逗号。因此,您可能首先要消除逗号。另外,在下面的代码中,我使用tolower
忽略大小写。我们只需使用seqdecomp
的{{1}}函数将您的文本转换为表格形式,然后将表格输入到TraMineR
。
seqdef
在这里,我们已经计算了纵向熵,复杂度指数和湍流。
对上述索引的计算,字母的大小没有已知的限制,只是它可能会增加计算时间。由于很难找到对比色,太大的字母实际上成为序列图形表示的问题。
湍流的一个已知缺点是,与复杂性指数不同,它忽略了序列中不存在的状态。而且,湍流的计算可能要花费更多的时间。因此,我们建议使用复杂性指数。