前提・実現したいこと
初めて質問させていただきます。よろしくお願いいたします。
現在、Rでrmsパッケージを用いてcox回帰分析を行っております。
下記のコードを入力した際のreferenceを変更したいのですが、なかなかうまくいきません。
症例数が最多であるgrade1がreferenceになります。
level等で順序を決めても変わりませんでした。
カテゴリー変数を用いる場合で回帰分析を行う際のreferenceを設定する方法を教えてください。
いろいろ調べてみてやってはみたもののなかなかうまくいかず、申し訳ございません。
よろしくお願いいたします。
発生している問題・エラーメッセージ
> summary(cox) Effects Response : Surv(time, os == 1) Factor Low High Diff. Effect S.E. Lower 0.95 Upper 0.95 grade - 0:1 2 1 NA -0.23035 0.44092 -1.09450 0.633840 Hazard Ratio 2 1 NA 0.79426 NA 0.33469 1.884800 grade - 2:1 2 3 NA 0.26053 0.39246 -0.50868 1.029700 Hazard Ratio 2 3 NA 1.29760 NA 0.60129 2.800400 grade - 3:1 2 4 NA -1.00360 0.51727 -2.01750 0.010202 Hazard Ratio 2 4 NA 0.36655 NA 0.13299 1.010300 grade - 4:1 2 5 NA 0.11657 0.43522 -0.73644 0.969570 Hazard Ratio 2 5 NA 1.12360 NA 0.47881 2.636800 ハザード比のreferenceがGrade1になっている。 →Grade0をreferenceとしたい。
該当のソースコード
set.seed(7) grade =as.character(sample(0:4,100,replace = T)) time = as.integer(runif(100,max = 500,min = 50)) os = rbinom(100,1,0.5) describe(grade) #grade1が最多→referenceになってしまう。 library(rms) train = data.frame(grade,time,os) #適当に作ったデータフレームなので意味はありませんが、 #grade:ステージ、time:生存時間、os:死亡1生存0、と考えてください。 train$grade = factor(train$grade , levels = c("0","1","2","3","4")) #これで解決するかと思ってましたが、意味があまり無いようです。 dd = datadist(train) options(datadist = "dd") cox = cph(Surv(time, os==1)~ grade,data = train) summary(cox)
試したこと
train$grade = factor(train$grade ,
levels = c("0","1","2","3","4"))#これではうまくいきませんでした。
orderも試してみましたが、ダメでした。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/12 02:14