50の連続した説明変数を使用してバイナリの結果を予測しようとしています(ほとんどの変数の範囲はから)。私のデータセットにはほぼ24,000行あります。Rで実行すると、次のようになります。glm
Warning messages:
1: glm.fit: algorithm did not converge
2: glm.fit: fitted probabilities numerically 0 or 1 occurred
完全な分離が発生している可能性があることを示唆する他の応答を読みましたが、データにはそうではないと確信しています(準完全な分離が存在する可能性がありますが、そうであるかどうかを確認するにはどうすればよいですか?) 。一部の変数を削除すると、「収束しませんでした」エラーがなくなる可能性があります。しかし、それは常に起こることではありません。
bayesglm
関数で同じ変数を使用しようとすると、同じエラーが発生しました。
ここで何が起こっているのかを正確に把握するには、どのようなステップを踏むでしょうか?どの変数が問題を引き起こしているのかをどのように把握しますか?
bayesglm
事前分布を追加することで分離を回避しようとしますが、24,000行では、おそらく事前分布は可能性に圧倒されています。prior.scale
おそらく大量に縮小してみてください。また、事前分布の自由度を増やすことを検討してください。これにより、分離に関連する大きな値を除外できます。
bayesglm