问题标签 [traminer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
162 浏览

r - 计算子集成员共现和组字母长度

R中有没有办法计算序列中状态共现的模式,即在元素顺序不一定重要的组上工作?目的是找出更大的子组在更长的组中的出现有多普遍。

例如,输入数据集将是这样的(“真实”数据序列的宽度可达约 10 列,深度可达 1000 行)......

结果可能会显示...

作为一个集合或类,用一个计数来表示出现的次数,例如 * 表示一个子集或“其他地方的成员资格”类别和基于 的分数length()

结果还会显示...

作为一个不同且稍微稀有的集合或类别,分数越高反映的时间越长length()

最后...

计数分数会更高,但length()分数会更低。

像 Traminer 这样适用于无序(无序?)组的东西会很棒。我注意到计算负载可能存在问题,但如果我需要刻意编写程序,我会考虑这一点(即某种琐碎阈值)。

0 投票
1 回答
90 浏览

r - Format of output for seqecmpgroup() function?

The seqecmpgroup() function returns a table that, among other things, include frequencies for each of the specified groups. However, when I run this it generates frequencies below 1 (e.g. 0.00035). Should I interpret these frequencies as percentages showing in how many of the groups that each subsequence occurs?

Below I've pasted an example output (the frequencies for each group are listed as "Freq.1", "Freq.2", etc.:

0 投票
1 回答
335 浏览

traminer - TraMineR:::seqerules 帮助页面?

有帮助页面TraMineR:::seqerules吗?我似乎在包裹里或网上都找不到它。缺少此帮助页面使输出有点难以解释。例如ConfLift列指定什么?下面是一个输出示例:

0 投票
1 回答
3074 浏览

r - 在序列中查找特定模式

我正在使用 R 包 TraMineR 对序列分析进行一些学术研究。

我想找到一种模式,定义为某人在目标公司,然后出去,然后回到目标公司。

(简化)我已将 A 州定义为目标公司;B 为外部行业公司,C 为内部行业公司。

所以我想做的是找到具有特定模式 ABA 或 ACA 的序列。

在看了这个问题(奇怪的子序列数?)并阅读了用户指南之后,特别是以下段落:

4.3.3 子序列 如果 u 的所有连续元素 ui 以相同的顺序出现在 x 中,则序列 u 是 x 的子序列,我们简单地用 u x 表示。根据这个定义,非共享 > 状态可以出现在序列 u 和 x 共有的状态之间。例如,u = S;M 是 x = S 的 > 子序列;你; 米;MC。

7.3.2 查找具有给定子序列的序列 seqpm() 函数计算包含给定子序列的序列的数量并收集它们的行索引号。该函数返回一个包含两个元素的列表。第一个元素 MTab 只是一个表格,其中包含数据中给定子序列的出现次数。请注意,每个序列只计算一次出现,即使子序列在序列中出现多次。列表的第二个元素 MIndex 给出了包含子序列的序列的行索引号。这些索引号对于访问相关序列可能很有用(下面的示例)。由于在字符串中搜索模式更容易,因此当使用带有 TRUE 选项的 seqconc 函数时,函数 rst 以这种格式转换序列数据。

我得出的结论是 seqpm() 是我完成工作所需的函数。

所以我有这样的序列:AAAABBBBBAAAAAA

根据我在提及的来源中找到的子序列的定义,我想我可以通过使用以下方法找到这种序列:

但这不会发生。为了找到我需要输入的示例序列

这对我需要的东西不是很有用。

  1. 那么你们看到我可能错过了什么吗?
  2. 如何检索从 A 到 B 并返回到 A 的所有序列?
  3. 有没有办法让我找到从 A 到其他任何地方然后回到 A 的方法?

非常感谢 !

0 投票
3 回答
301 浏览

r - 将状态序列转换为事件序列

这个问题实际上来自我问过自己的这个问题(在序列中查找特定模式),但我相信这是一个单独的问题。

根据 Gilbert 的响应,我尝试从状态序列创建事件序列,但遇到了问题。

建议是使用

然后使用

但是当我尝试使用 seqecreate() 时,出现以下错误:

如果我尝试使用以下方法将其转换为事件序列,也会发生同样的情况:

尝试使用行的子集并确定哪些行导致了问题,我发现有问题的行都处于恒定状态,这意味着它们实际上没有转换,它们永久保持在同一个状态(例如 AAAAAA)。

所以我的问题是:

  1. 我可以设置任何标志或任何东西来进行转换吗?
  2. 如果不是,我如何删除这些行,因为它们具有不同的长度和缺失值。例如,我可能有如下序列:

    缺失-缺失-AAAA AA-缺失-缺失-缺失-缺失-缺失

非常感谢提前!

提供我的数据样本:

comp.seq <- seqdef(comp,NULL,states=comp.scodes,labels=comp.labels, alphabet=comp.alphabet,missing="Z") comp.seq[1:7,] 1 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-B-B-B-B-B-B-B-B-D-D-D-D-D-A-A-A-A-A-A-A-A-A 2 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-C-C-C-C-C-C-C-C-C-C-C-C-C-C-*-B-B-B-B-B-B-B-B-B-B-B-B-B-A-A-A-A-A-A 3 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-A-A-A-C-C-A-A-A-A-A-A-A-D-D-A-A-A-A-A-A-A-A 4 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-B-B-B-B-B-B-A-A-A-A-A-A-A-A-A-A-A-A-A-A-A-A-A-A-A-A 5 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-C-C-D-D-D-D-D-D-D-D-D-D-A-A-A-A-A 6 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-B-B-B-B-B-B-B-B-B-B-B-B-B-D-D-D-D-D-D-D-D-A-A-A-A 7 *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-A-A-A-A-A-A-A-A-A-A-A-A

第 7 行是一个有问题的行。如果我尝试使用seqecreate(comp.seq[1:6,])它就可以了

0 投票
1 回答
140 浏览

r - 如何解决无效元素压倒性分析?

我正在使用 对长度非常不同的序列数据进行一些分析TraMineR。最终发生的是%用于使序列同样长的空元素 ( ) 最终压倒了其他所有内容:

我怎样才能避免这种影响?

0 投票
2 回答
654 浏览

r - Traminer 替换成本

我对过渡成本矩阵有一个逻辑问题。我正在使用 R 包 Traminer 研究序列差异。

我试着给你一个简单的例子(非常简单,但我希望对解释我的问题有用):

有三个序列,我想计算相异矩阵。字母表是:H(健康)、I(在家生病)、IH(在医院生病)、D(去世)

我观察了 3 个受试者进行 5 次观察。这些是序列:

替代成本矩阵是一个 4x4 表(状态 x 状态)。它必须是对称的?这是我的逻辑问题:虽然可以从状态 H、I 或 IH “过渡”到状态 Died,但相反是不合逻辑的。

我可以在 TraMineR 中使用非对称替代成本矩阵吗?

如果在我的数据库中,sm = "TRATE"从状态“I”到“D”的替换成本(例如用 计算)低于(0.5)从状态“I”到“IH”的替换成本(0.6),则 OM 算法用“D”代替“HI”代替“I”。

0 投票
1 回答
126 浏览

traminer - 非对称成本矩阵的工作方式是什么?

我试图回答这个问题Traminer 替换成本

我突然想到,我真的不知道矩阵的处理方向是什么TraMineR。例如,假设我有以下矩阵

这是否意味着TraMineR认为 A->B 成本为 2 或 B->A 成本为 2 ?

谢谢 !

0 投票
1 回答
1074 浏览

r - 是否可以使用 TraMineR 和 R 基础图制作带有图案填充的图?

在此处输入图像描述在发布序列分析或通常具有许多分类状态的图时,常见问题1 2是它们不容易转移到黑白纸质出版物。有一些工具,例如Colorbrewer,可以帮助对灰度颜色做出明智的决定。尽管如此,如果调色板超过 5 种或更多的灰色阴影,结果将不能令人满意。因此,在这些情况下,将图案填充添加到某些图形区域会非常有帮助(尽管著名的 Edward Tufte 不推荐这样做)。

是否可以使用 R 基础图形的图案填充功能或基础图形的扩展来向图形添加填充图案TraMineR

这是序列索引图的小示例:

彩色序列索引图 用于黑白出版的未调整灰色序列索引图

0 投票
1 回答
190 浏览

r - 加速识别子序列

我正在使用一个数据集,每个序列中有数百个事件。我正在尝试使用TraMineR. 例如,这是我要编写的代码:

只要我将 maxK 设置为 1-3,这通常是可行的,但是当我移动该值时,计算需要数小时甚至数天。我可以调整任何特定参数来加快这些计算吗?