0

ここに投稿するのは初めてです。すべてではなく、cuminc 出力の一部をプロットしようとしています。すべてをプロットすると、簡単に次のことができます。

>plot(PTAR.CIage4)

これにより、行が多すぎました。すべてのグループではなく、「S」グループ (5 行) だけが必要です。PTAR.CIage4によって作成されます:

>PTAR.CIage4<-cuminc(ftime=PTARdata$Time,fstatus=PTARdata$event,group=PTARdata$AgeG3,
    cencode="N",subset=(PTARdata$AgeG2!=0 & PTARdata$Time<34))

PTAR.CIage4 内では、データは次のようになります。

> str(PTAR.CIage4)
>List of 16
> $ 1 D  :List of 3
>  ..$ time: num [1:636] 0 0.19 0.19 0.52 0.52 0.85 0.85 1.21 1.21 1.28 ...
>  ..$ est : num [1:636] 0.00 0.00 4.13e-05 4.13e-05 8.25e-05 ...
>  ..$ var : num [1:636] 0.00 0.00 1.70e-09 1.70e-09 3.41e-09 ...
> $ 2 D  :List of 3
>  ..$ time: num [1:198] 0 0.49 0.49 0.91 0.91 1.14 1.14 1.77 1.77 3.25 ...
>  ..$ est : num [1:198] 0 0 0.000233 0.000233 0.000466 ...
>  ..$ var : num [1:198] 0.00 0.00 5.44e-08 5.44e-08 1.09e-07 ...
> $ 3 D  :List of 3
>  ..$ time: num [1:164] 0 0.55 0.55 2.16 2.16 2.36 2.36 2.62 2.62 2.72 ...
>  ..$ est : num [1:164] 0 0 0.000631 0.000631 0.000946 ...
>  ..$ var : num [1:164] 0.00 0.00 1.99e-07 1.99e-07 2.98e-07 ...
> $ 4 D  :List of 3
>  ..$ time: num [1:208] 0 0.32 0.32 1.37 1.37 2.03 2.03 2.85 2.85 3.67 ...
>  ..$ est : num [1:208] 0 0 0.000371 0.000371 0.000742 ...
>  ..$ var : num [1:208] 0.00 0.00 1.38e-07 1.38e-07 2.75e-07 ...
> $ 5 D  :List of 3
>  ..$ time: num [1:238] 0 1.14 1.14 1.34 1.34 1.9 1.9 2.06 2.06 2.26 ...
>  ..$ est : num [1:238] 0 0 0.00186 0.00186 0.00371 ...
>  ..$ var : num [1:238] 0.00 0.00 3.44e-06 3.44e-06 6.87e-06 ...
> $ 1 I  :List of 3
>  ..$ time: num [1:464] 0 0.98 0.98 2 2 3.35 3.35 3.64 3.64 3.74 ...
>  ..$ est : num [1:464] 0.00 0.00 4.13e-05 4.13e-05 8.25e-05 ...
>  ..$ var : num [1:464] 0.00 0.00 1.70e-09 1.70e-09 3.41e-09 ...
> $ 2 I  :List of 3
>  ..$ time: num [1:56] 0 3.87 3.87 4.53 4.53 ...
>  ..$ est : num [1:56] 0 0 0.000233 0.000233 0.000466 ...
>  ..$ var : num [1:56] 0.00 0.00 5.44e-08 5.44e-08 1.09e-07 ...
> $ 3 I  :List of 3
>  ..$ time: num [1:48] 0 2.26 2.26 5.12 5.12 ...
>  ..$ est : num [1:48] 0 0 0.000315 0.000315 0.000631 ...
>  ..$ var : num [1:48] 0.00 0.00 9.95e-08 9.95e-08 1.99e-07 ...
> $ 4 I  :List of 3
>  ..$ time: num [1:44] 0 2.66 2.66 4.69 4.69 9.75 9.75 9.92 9.92 9.98 ...
>  ..$ est : num [1:44] 0 0 0.000371 0.000371 0.000742 ...
>  ..$ var : num [1:44] 0.00 0.00 1.38e-07 1.38e-07 2.75e-07 ...
> $ 5 I  :List of 3
>  ..$ time: num [1:40] 0 1.14 1.14 7.03 7.03 7.19 7.19 7.78 7.78 10.8 ...
>  ..$ est : num [1:40] 0 0 0.00186 0.00186 0.00371 ...
>  ..$ var : num [1:40] 0.00 0.00 3.44e-06 3.44e-06 6.87e-06 ...
> $ 1 S  :List of 3
>  ..$ time: num [1:1358] 0 3.25 3.25 5.74 5.74 5.78 5.78 6.04 6.04 6.34 ...
>  ..$ est : num [1:1358] 0.00 0.00 4.13e-05 4.13e-05 8.25e-05 ...
>  ..$ var : num [1:1358] 0.00 0.00 1.70e-09 1.70e-09 3.41e-09 ...
> $ 2 S  :List of 3
>  ..$ time: num [1:1082] 0 9.95 9.95 10.57 10.57 ...
>  ..$ est : num [1:1082] 0 0 0.000233 0.000233 0.000466 ...
>  ..$ var : num [1:1082] 0.00 0.00 5.44e-08 5.44e-08 1.09e-07 ...
> $ 3 S  :List of 3
>  ..$ time: num [1:948] 0 6.01 6.01 8.96 8.96 ...
>  ..$ est : num [1:948] 0 0 0.000315 0.000315 0.000631 ...
>  ..$ var : num [1:948] 0.00 0.00 9.95e-08 9.95e-08 1.99e-07 ...
> $ 4 S  :List of 3
>  ..$ time: num [1:908] 0 7.78 7.78 9.72 9.72 ...
>  ..$ est : num [1:908] 0 0 0.000371 0.000371 0.000742 ...
>  ..$ var : num [1:908] 0.00 0.00 1.38e-07 1.38e-07 2.75e-07 ...
> $ 5 S  :List of 3
>  ..$ time: num [1:472] 0 5.88 5.88 9.29 9.29 ...
>  ..$ est : num [1:472] 0 0 0.00186 0.00186 0.00371 ...
>  ..$ var : num [1:472] 0.00 0.00 3.44e-06 3.44e-06 6.87e-06 ...
> $ Tests: num [1:3, 1:3] 1.12e+03 4.90e+01 7.48e+02 0.00 5.84e-10 ...
>  ..- attr(*, "dimnames")=List of 2
>  .. ..$ : chr [1:3] "D" "I" "S"
>  .. ..$ : chr [1:3] "stat" "pv" "df"
> - attr(*, "class")= chr "cuminc"

$1S~$5Sをプロットに呼び出す方法がわかりません。誰でも私を助けることができますか?

4

3 に答える 3

1

おそらく、この関数が役立つでしょう:

cs.cuminc <- function(x,cause="1"){
  if (!is.null(x$Tests)) 
    x <- x[names(x) != "Tests"]
  which.out <- which(unlist(strsplit(names(x), " "))[seq(2,length(names(x))*2,2)]!=cause)
  x[which.out] <- NULL
  class(x) <- "cuminc"
  return(x)
}

cumincこれは、1 つのタイプの失敗のみの曲線をプロットするために使用できます。これは、配置した-objectから失敗の他の原因の結果を削除するためです。

cuminc-helpfile から調整した例を次に示します。

# Simulate some data
set.seed(2)
ss <- rexp(100)
gg <- factor(sample(1:3,100,replace=TRUE),1:3,c('a','b','c'))
cc <- sample(0:2,100,replace=TRUE)
strt <- sample(1:2,100,replace=TRUE)

# Make cuminc object and plot all curves
xx <- cuminc(ss,cc,gg,strt)
plot(xx,lty=1,color=1:6)

# Now use function to only plot the lines for cause="2"
x.2 <- cs.cuminc(xx, cause="2")
plot(x.2,lty=1,color=4:6)

関数のデフォルトは cause="1" です (文字列として入力する必要があります)。OPの例の場合、次のようになります。

PTAR.CIage4.S <- cs.cuminc(PTAR.CIage4, cause="S")
plot(PTAR.CIage4.S)
于 2013-12-24T11:11:35.340 に答える