Re: [问题] 求取转移机率矩阵

楼主: celestialgod (天)   2015-03-12 14:17:26
※ 引述《yummy7922 (crucify)》之铭言:
: ※ 引述《yummy7922 (crucify)》之铭言:
: 不好意思,我没有说明清楚,
: 我想算的机率其实是很直观的条件机率,例如:
: P(第二期使用b药物|第一期使用a药物)
: = (第一期使用a药且第二期使用b药的人数)/(第一期使用a药的人数)
: 但是我不知道该怎么在分组之后,还能够给定条件,
: 计算出第一期使用a药第二期使用b药的人数。
: 资料大概是长这样:
: id M_01 M_02 M_03 M_04 M_05 M_06 duration
: ace01 1 1 ..... 1
: ace01 0 1 2
: ace01 0 0 3
: swe02 0 1 1
: swe02 1 1 2
: kue03 0 1 1
: kue03 1 0 2
: kue03 0 1 3
: kue03 1 0 4
: kue03 1 1 5
: 其中,M_01表示有没有服用第一种药,共有六种药,
: duration表示为该位病人的第几个月的观察值。
Updata a faster way to do.
code: http://pastebin.com/Eg7vn058
> transitMatrix_eachTime[[1]] # 第二期的转移矩阵
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 0.1579643 0.1652346 0.1625909 0.1711831 0.1784534 0.1645737
[2,] 0.1698612 0.1692003 0.1639128 0.1625909 0.1771315 0.1573034
[3,] 0.1635638 0.1775266 0.1569149 0.1675532 0.1682181 0.1662234
[4,] 0.1661085 0.1654387 0.1634293 0.1654387 0.1694575 0.1701273
[5,] 0.1722746 0.1648721 0.1561238 0.1641992 0.1709287 0.1716016
[6,] 0.1675862 0.1620690 0.1648276 0.1655172 0.1765517 0.1634483
(1,1)位置就是上一期服dose 1,下一期也是dose 1的条件机率
(1,2)位置就是上一期服dose 1,下一期服dose 2的条件机率,剩下依此类推
PS: 因此,转移矩阵的每一个列,其和为1
作者: yummy7922 (crucify)   2015-03-12 15:33:00
我真是对您感到很敬佩 我还在想该怎么修改 您已完成

Links booklink

Contact Us: admin [ a t ] ucptt.com