【发布时间】:2016-10-19 13:45:36
【问题描述】:
假设我们有以下 4 个状态:(A, B, C, D)
我的表格格式如下
old new
A B
A A
B C
D B
C D
. .
. .
. .
. .
我想根据表中给出的数据计算以下概率:
P(new=A | old=A)
P(new=B | old=A)
P(new=C | old=A)
P(new=D | old=A)
P(new=A | old=B)
.
.
.
.
P(new=C | old=D)
P(new=D | old=D)
我可以手动完成,将每次转换发生时的所有值相加并除以行数,但我想知道 R 中是否有一个内置函数可以计算这些概率或至少有帮助加快计算这些概率。
任何帮助/输入将不胜感激。如果没有这个功能,哦。
【问题讨论】:
-
prop.table(table(old, new), margin=2)之类的东西在基础 R 中应该非常接近。 -
@lmo - 对我来说似乎是一个完全可以接受的答案,并且完全符合他们的要求。国际海事组织你应该发布那个。
-
或包
TraMineR::seqtrate,它“返回一个具有状态之间转换率的矩阵,由一组序列计算得出” -
@Imo 我使用了你的提示,效果很好。谢谢你的回答
标签: r