2

SASで以前に作成したワイブル分布を使用して、生存分析を複製しようとしています-現在、ライセンスのないマシンで作業しているため、R(両方ともWindowsから)を使用しています。私の(右打ち切り)入力データは次のようになります。

> head(mydata)
  ID         Key  Time  Score    Event    Censor
1 1231231    ZXC   28   182.34   0      1
2 4564564    ASD   28   320.04   0      1
3 7897897    QWE   28   306.32   0      1
4 9879879    QWE   28   211.92   0      1
5 6546546    ASD   28   276.14   0      1
6 3213213    ZXC   28   331.50   0      1

Event と Censor はバイナリで、Score は約 150 から 450 の間で変化し、Time は 1 から 28 の間で変化します。入力データセットには約 30,000 行あります。

私がしようとすると:

mydatasr <- survreg(Surv(Time, Censor) ~ Score, dist = "w")

次の警告メッセージが表示されます。

survreg.fit(X, Y, weights, offset, init = init, controlvals = control, : 反復を使い果たし、収束しませんでした。

そして出力なし。

このメッセージをオンラインで (およびこのサイトを介して) 検索しましたが、問題の原因を示すものを見つけることができませんでした。SASで同じデータを(procロジスティックと)liferegに通しても収束の問題はありませんでした。

4

2 に答える 2

3

データがないとわかりにくい。デフォルトの 30 である反復回数を 2 倍 (または以下の図のように 3 倍) にすることができます。

(mydatasr <- survreg(Surv(Time, Censor) ~ Score , dist = "w", control = list(maxiter=90) )

その他のオプションについては、?survreg.control を参照してください。また、Surv-object には式の前に閉じ括弧があることを見逃している可能性があると推測しています-~

于 2015-08-25T18:59:06.023 に答える
0

これを試して:

   survreg(Surv(Time, Censor) ~ Score, data=mydata, dist = "w", scale=1)
于 2015-08-25T11:23:11.060 に答える