1

複数のダミー変数と他の変数も含むデータセットが送信されました。基本的に私がやりたいことは、rms から summary.formula を使用して要約テーブルを作成することです。ただし、複数のダミー変数から単一の変数を作成する方法がわかりません。それらは相互に排他的ではありません。これはまったく可能ですか。もちろん、テーブルなどを作成することもできますが、summary.formula を使用することはできず、summary.formula の出力にダミー変数の個々のレベルだけを含めたいと思います。

編集:明確にするために:aとbを要約する必要がありますが、それらは相互に排他的ではありません. 年齢は行ごとに記録されるため、a と b を 1 つの変数にまとめて、summary.formula で使用できるようにする必要があります。以下のコードを編集して、0 と 1 をそれぞれ NA または a,b に変更しました。

summary.formula の出力を次のようにしたいと思います。

h<-data.frame(a=sample(c("A",NA),100,replace=T),b=sample(c("B",NA),100,replace=T),age=rnorm(100,50,25),epo=sample(c("Y","N"),100,T))





library(rms)

summary.formula(epo~age####+summary variable of a & b######,method="reverse",data=h)



#-----------------
 Descriptive Statistics by epo

+---------+--------------------------+--------------------------+
|         |N                         |Y                         |
|         |(N=56)                    |(N=44)                    |
+---------+--------------------------+--------------------------+
|age      |31.53434/48.90788/67.69096|28.63689/43.93502/57.81834|
+---------+--------------------------+--------------------------+
|sab : A  |         25% (14)         |         16% ( 7)         |
+---------+--------------------------+--------------------------+
|   B     |         27% (15)         |         32% (14)         |
+---------+--------------------------+--------------------------+
4

1 に答える 1

2

past()の使用は問題なく機能するようです。

h$sab <- paste(h$a, h$b, sep="_")
summary.formula(epo~age+sab,method="reverse",data=h)
#-----------------
 Descriptive Statistics by epo

+---------+--------------------------+--------------------------+
|         |N                         |Y                         |
|         |(N=56)                    |(N=44)                    |
+---------+--------------------------+--------------------------+
|age      |31.53434/48.90788/67.69096|28.63689/43.93502/57.81834|
+---------+--------------------------+--------------------------+
|sab : 0_0|         25% (14)         |         16% ( 7)         |
+---------+--------------------------+--------------------------+
|    0_1  |         27% (15)         |         32% (14)         |
+---------+--------------------------+--------------------------+
|    1_0  |         25% (14)         |         34% (15)         |
+---------+--------------------------+--------------------------+
|    1_1  |         23% (13)         |         18% ( 8)         |
+---------+--------------------------+--------------------------+

別のオプションはinteraction()かもしれません:

summary.formula(epo~age+interaction(a,b),method="reverse",data=h)

代わりに、変数の組み合わせに論理「OR」を適用する場合は、次を使用します。

h$a_or_b <- with(h, a|b)
summary.formula(epo ~ age+ h$a_or_b,method="reverse",data=h)
于 2011-05-31T20:21:22.467 に答える