0

にサバイバル オブジェクトがありRます。

print(surv)私にくれます

> print(surv)
Call: survfit(formula = Surv(TAGE, EVENT) ~ 1, data = data_LTC[data_LTC$TYPE == 
    "Job", ])

records   n.max n.start  events  median 0.95LCL 0.95UCL 
 299510  299510  299510  252884     177     173     180 

ただし、quantile(surv)機能せず、出力されます

> quantile(surv)
Error in is.na(y) : 'y' is missing

Rは中央値 (177) を計算できますが、他の四分位数は計算できないため、私にとっては奇妙なことです。

サバイバル オブジェクトの何が問題になっていますか?

[編集]
おそらくこれは問題の最小の例です: ドキュメント ( http://stat.ethz.ch/R-manual/R-patched/library/survival/html/quantile.survfit.html ) には、この例があります:

> fit <- survfit(Surv(time, status) ~ ph.ecog, data=lung)
> quantile(fit)
$quantile
          25% 50% 75%
ph.ecog=0 285 394 655
ph.ecog=1 181 306 550
ph.ecog=2 105 199 351
ph.ecog=3 118 118 118
...

さて、この出力の最初の行だけを繰り返したい場合は、

> fit <- survfit(Surv(time, status) ~ 1, data = lung[lung$ph.ecog == 0,])
> quantile(fit)
Error in is.na(y) : 'y' is missing

@Edwinは、quantile(fit$time)代わりに使用することを以下に提案しました

> quantile(fit$time)
     0%     25%     50%     75%    100% 
   5.00  224.25  301.50  439.75 1010.00 

ただし、明らかに異なる結果につながります。

[終了]以下の回答はパッケージ内で
使用されていないため無視してください。ただし、組み込みの関数を使用しています。quantile.survfitsurvivalRquantile

survivalこの問題を解決するには、パッケージの最新バージョンに更新してください。

これを行う

update.packages()

そのためには root 権限が必要な場合があることに注意してください。

4

2 に答える 2

2

quantile関数に数値を入力する必要があるサバイバルオブジェクトに関数を適用しようとしていますvector。サバイバル オブジェクトにはこのベクトルが含まれていますが、最初にそれを抽出する必要があります。例として、サバイバル パッケージの白血病データ セットを使用します。

library(survival)
data(leukemia)
surv.obj <- survfit(Surv(time = leukemia$time, event = leukemia$status) ~ 1)

names(surv.obj)
[1] "n"         "time"      "n.risk"    "n.event"   "n.censor"  "surv"   "type"     
[8] "std.err"   "upper"     "lower"     "conf.type" "conf.int"  "call"     

quantile(surv.obj$time)
  0%    25%    50%    75%   100% 
5.00  13.75  27.50  33.75 161.00 

quantile関数 onsurv.obj$lowerおよびを使用して、95% CI の下限と上限の分位点も抽出できることに注意してくださいsurv.obj$upper

于 2013-03-13T11:58:24.110 に答える
1

私はオブジェクトに何も問題がないことを提案しますが、むしろあなたはそれを悪用しようとしています。print(surv)ステートメントの中央値は、Surv(TAGE、EVENT)データからの情報を使用しますが、それは、quantile(surv)が必ずしも期待どおりに機能する必要があるという意味ではありません。

于 2013-03-13T11:40:11.987 に答える