0

完整的 data.frame 概述:

'data.frame':   29 obs. of  3 variables:
$ FirmDatum : Date, format: "1982-12-31" "1983-03-31" "1983-06-30" ...
$ fittedSurv: num  0.884 0.839 0.779 0.746 0.817 ...
$ Rating    : chr  "Aa" "Aaa" "B" "Bb" ...

该列fittedSurv包含概率,该列Rating对应于该fittedSurv时间点的概率 ( )。

对于马尔可夫链转换矩阵,我需要额外的列。仅对概率的单列(向量)进行纯粹的重新采样是无法单独进行的。

就推理而言,最有效的方法是什么?
关于正确的 R 包的可能指示就足够了 - 一个例子将是一个奖励。

@乔纳森。很可能是这样。然而,我怀疑随时间变化的概率可以被引导或重新采样概率向量,以便创建有意义的概率列。就像是:

A <- data.frame(X=FrameTs$Rating)
B <- data.frame(replicate(20, sample(as.character(A$X), size=100, replace = TRUE)))
4

1 回答 1

1

可能的解决方案(我不相信)是:

A <- data.frame(X=FrameTs$Rating)
w <- FrameTs$fittedSurv/sum(FrameTs$fittedSurv)
B <- data.frame(replicate(10, sample(as.character(A$X), size=10, replace = TRUE, prob=w)))

给定概率,它产生等权矩阵:

   X1 X2 X3 X4 X5 X6 X7 X8 X9 X10
1   A  A  A  A  A  A  B  A  B   B
2   B  A  A  A  A  A  A  A  A   A
3   A  A  A  B  C  A  A  B  B   A
4   A  A  A  A  A  A  A  A  A   A
5   B  A  A  A  B  A  A  A  A   B
6   A  A  B  B  B  A  A  B  A   A
......and so on...

Of course the matrix B size can be extended via replicate(1000, sample(...

基于这个“概率”(评级)矩阵,可以得到马尔可夫转移矩阵。(包 ms​​m 等)。输出数字似乎直观且正确,但我不相信这种方法

于 2013-01-19T10:49:03.227 回答