我在过渡成本矩阵上有一个合乎逻辑的问题。我正在使用R包Traminer处理不同的序列。
我试着给你们一个简单的例子(非常简单,但我希望能解释一下我的问题):
有三个序列,我想要计算不同的矩阵。字母表是:H(健康),I(在家生病),IH (在医院生病),D(死亡)
我观察这3名受试者,进行5次观察。以下是序列:
H – H – I – D – D
H – I – I – I – D
I – I – H – IH – IH 替换成本矩阵是一个4x4表(状态x状态)。一定是对称的?这是我的逻辑问题:虽然有可能从H、I或IH“中转”到死亡,但相反却是不合逻辑的。
我可以在TraMineR中使用非对称替代成本矩阵吗?
如果在我的数据库中,从状态“i”到“D”的替换成本(例如,用sm = "TRATE"计算)低于从状态'I‘到'IH’(0.6)的替换成本,则OM算法将“I”替换为“D”而不是“HI”。
发布于 2015-02-20 12:55:06
在我看来,你是在寻找一个定制的成本矩阵。使用TRATE或CONSTANT方法都不是强制性的。
要创建自定义矩阵,只需执行以下操作:
myscm <- matrix(c(0,1,2,
1,0,2,
2,2,0), nrow=3, ncol=3)
dist.om <- seqdist(my.seq, method="OM", sm=myscm)其中myscm是您的自定义矩阵
这是取自http://lists.r-forge.r-project.org/pipermail/traminer-users/2011-July/000075.html的
我相信你有两个选择:
1)为所有转换创建一个基本原理和一个完整的自定义矩阵
2)获取已经生成的转换矩阵(使用seqsubm(your.seq, method = "TRATE") ),只更改不一致的值。我在最后的分析中就是这么做的。
但请记住吉尔伯特在An "asymmetric" pairwise distance matrix中提出的观点
发布于 2015-02-18 15:01:51
转换率(估计的过渡概率)不应与替代成本混淆。替代成本应该反映各州之间的不同之处。
转换速率矩阵(由seqtrate返回)是不对称的。
用于计算距离(如最优匹配距离)的替换代价必须是对称的。否则,结果将不是一个距离矩阵,并将这样一个非对称矩阵输入到,例如,一个聚类过程将导致意外的结果。
从过渡率中得出替代成本只是定义替代成本的几种可能性中的一种。如果让$p(i\j)$是从$j$传输到$i$的概率,它包括将替换成本定义为
$c(i,j) =2-p(i=j)-p(j=i)$
https://stackoverflow.com/questions/28586009
复制相似问题