問題タブ [cox-regression]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1108 参照

r - rcorr.cens() と val.surv を使用した Cox モデルの外部検証

私は 2 つの独立したデータセットを持っています。私がやりたいことは、外部データセット (test_dat、n=1000) を使用してメイン データセット (main_dat、n=5421) から取得した Cox モデルを検証することです。しかし、Hmisc パッケージの rcorr.cens() と rms の val.surv の両方を使用すると、エラー メッセージが表示されます。これが私がやっていることです:

rcorr.cens(x = 推定値、S = surv.obj) のエラー: y は x と同じ長さでなければなりません

val.surv(phmodel, newdata = test_dat, u = 10) のエラー: ディム [製品 1000] はオブジェクト [5421] の長さと一致しません さらに: 警告メッセージ: est.surv + S[, 1] : 長いオブジェクトの長さが短いオブジェクトの長さの倍数ではありません

何か間違ったことをしていますか、それとも 2 つのデータセットの観測数が同じでなければなりませんか?

どんな助けでも大歓迎です。

0 投票する
2 に答える
10866 参照

r - RのCoxの回帰モデルで生存時間を予測するには?

Cox の回帰を使用してモデル化された問題があり、個人の推定生存時間を予測したいと考えています。モデルには、生存時間が依存する共変量のリストがあります。これは、基本的に特定の個人の生存関数 (1-CDF) である P(T>t) を計算する方法を教えてくれます。

少し違う何かを予測したい。使用された共変量の値を指定して、その人の推定生存日数を予測したいと思います。私によると、これはpdfからのサンプリングに似ています。Rのサバイバルパッケージを使用してこれを行うにはどうすればよいですか? 以下は、Cox の回帰モデルを使用した近似の要約です。

0 投票する
1 に答える
406 参照

r - 「正確な」タイを使用した R の Cox 回帰のセグメンテーション フォールト

大規模な離散比例ハザード モデル (〜 100k 行、〜 10k イベント) を当てはめようとしています。これを行うために、サバイバルパッケージのドキュメントドキュメントでcoxph(..., method = "exact")推奨されているように使用しました。

「正確な部分尤度」は、条件付きロジスティック モデルに相当し、時間が離散値の小さなセットである場合に適しています。多数の同点および (開始、停止) スタイルの生存データがある場合、計算時間が過度に長くなります。

coxph計算上の困難と多数の同点に関する警告がいくつかありましclogitたが、同じパッケージのドキュメントによると:

ただし、正確な部分尤度の計算は非常に遅くなる可能性があります。特定の階層に、たとえば 20 件の被験者から 10 件のイベントがある場合、20 件から 10 件を選択するすべての可能な方法を含む分母を合計する必要があります。これは 20!/(10! 10!) = 184756 項です。Gail らは、これを大幅に改善する高速再帰法について説明しています。パッケージのバージョン 2.36-11 に組み込まれましたsurvival

そのため、計算の問題がそれほど悪いとは思っていませんでした。それにもかかわらず、自明な (予測子が 1 つの) Cox モデルのバリアントをデータセットに当てはめようとすると、多くのセグメンテーション エラーに遭遇しました。1 つは「C スタック オーバーフロー」であり、簡潔で適切な (そして有益でない) メッセージが表示されます。

もう 1 つは「メモリがマップされていません」というエラーです。これは、「イベント」ブール値を誤って反転させて、10k イベントではなく 90k イベントになったときに発生しました。

参考までに、私が実行しているコードは単にcoxph(Surv(t, d) ~ x, data = data, method = 'exact'). tは整数列、dブール値x、浮動小数点数です。

これらは既知の問題ですか? 回避策はありますか?

編集:ratsデータセットの問題を再現するコードを次に示します (1000 回複製):

そして、ここにありますversion

0 投票する
0 に答える
681 参照

sas - SAS PHREG による区分的線形回帰

SASのPHREG手順で区分線形回帰モデルを実装する方法は?

たとえば、X=T でノットが 1 つの場合:

Y = β_10 + β_11 . X ≤ T の場合は X

Y = β_20 + β_21 . X >T の場合 X

連続性の制約があるモデルを考えると、次のようになります。

すなわち:

どこ

最後に、Cox モデルに含めたいと思います。

しかし、問題は S_1 に未知のベータ係数があることです。

ご協力いただきありがとうございます!

0 投票する
0 に答える
123 参照

r - R: cox 比例ハザード モデルの実行時に "caught segfault" が発生する

新しい変数を 1 つ追加するたびに、いくつかの Cox モデルを実行しています。

私が実行した主なモデルは

weekこれは問題なく機能しましたが、取引が開始された時間 (または週) を考慮に入れる固定効果を追加したいと考えました。だから私は以下を実行しました:

このモデルをラップトップで実行すると、R がクラッシュします。クラスターで実行すると、次のエラーが発生します。

model1 では 8 GB の RAM を使用し、正常に動作しました。model2 では、クラスターで 128 GB に増やしてみましたが、動作しませんでした。

メモリとは関係なく、代わりにweek変数を追加する必要があると思います。このエラーは、週変数が取引の開始日と終了日であるtime1secとに何らかの形で関連付けられているために発生していますか?time2sec

更新グラフに示すように、weekに対して プロットしました。time1secこれら 2 つの変数が完全に相関していることはわかっていますが、持続時間も time2sec に基づいているため、固定効果として週を含めることはできませんか? それとも、これは time1sec 変数を介してモデルによって考慮されますか?

plot-openWeek-vs-time1sec

0 投票する
2 に答える
1786 参照

r - Cox モデルの欠落の理由を理解する

次の Cox モデルを実行したところ、1526679 個の削除された観測が得られました。これは私のデータの大部分です。

これらの観測が削除された理由はわかりません。これらの値が存在し、空ではないことは確かです。これは、脆弱性用語として ID を追加したときに発生し始めました。

ここで何が起こっているのでしょうか?

0 投票する
1 に答える
77 参照

survival-analysis - CoxPH モデルの PPER 形式を SPELL 形式に変換する方法

CoxPH 生存分析

次のような PPER (人期間) 形式のデータセットがあります。

Machine_id,Timestamp,Event,TDV1,TDV2,TDV3,TDV4 TDV1/2 は要因 (ブランド、場所) TDV3/4 は連続 (温度、湿度)

次のような SPELL 形式に変換する必要があります: Machine_id,start.time,stop.time,event,TDV1,TDV2,TDV3,TDV4

TraMineRextras で seqdef() & toPersonPeriod() を使用して SPELL から PPER に変換できました

逆を行うには助けが必要でした。また、PPER から SPELL 形式に移行する際に連続変数を処理する方法は?