これはstats.stackexchangeからの再投稿です。ここで私は満足のいく回答を得られませんでした。私は2つのデータセットを持っています。最初は学校であり、2番目は各学校の学生です。標準化テストで失敗した人(重点は意図的です)。偽のデータセットは、(Tharenのおかげで)によって生成することができます:私は(失敗= 1 |学生の人種、学校収益)Pを推定しようとしていますR:階層的データのベイジアンロジスティック回帰
#random school data for 30 schools
schools.num = 30
schools.data = data.frame(school_id=seq(1,schools.num)
,tot_white=sample(100:300,schools.num,TRUE)
,tot_black=sample(100:300,schools.num,TRUE)
,tot_asian=sample(100:300,schools.num,TRUE)
,school_rev=sample(4e6:6e6,schools.num,TRUE)
)
#total students in each school
schools.data$tot_students = schools.data$tot_white + schools.data$tot_black + schools.data$tot_asian
#sum of all students all schools
tot_students = sum(schools.data$tot_white, schools.data$tot_black, schools.data$tot_asian)
#generate some random failing students
fail.num = as.integer(tot_students * 0.05)
students = data.frame(student_id=sample(seq(1:tot_students), fail.num, FALSE)
,school_id=sample(1:schools.num, fail.num, TRUE)
,race=sample(c('white', 'black', 'asian'), fail.num, TRUE)
)
。学生データセットで多項式離散選択モデルを実行すると、P(Race | Fail = 1)を見積もっているはずです。私は明らかにこれの逆数を推定する必要があります。すべての情報が2つのデータセット(P(Fail)、P(Race)、Revenue)で使用可能であるため、これを行うことができない理由はありません。しかし、私は実際にどのようにRで実装するのか困っています。どんなポインタも大いに感謝します。ありがとう。
Vincent、ありがとう。学校レベルへのロールアップの問題は、私は追加の学生レベルの特性、つまり親の収入を含めることができないということです。だからこそ私は、逆確率を推定する明示的な階層的な方法を欲しかったのです。 – user702432
この場合、私は同じデータにすべてを入れることを提案します。フレーム (列school_id、student_id、レース、結果、school_revなど)、 でもテストに合格した学生の行が必要です。 –
それは問題です。私は学生レベルで切り詰められたサンプルを持っています。そのため、私は混合モデリングのラインに沿って何かを考えようとしていました。 – user702432