を右側の変数として使用lm
して回帰を実行するとします。factor
因子のどのレベルが基本カテゴリ(多重共線性を回避するために除外されるもの)であるかを選択するための最良の方法は何ですか。私には多くの要因があるため、切片を除外することに興味がないことに注意してください。
また、data.frameに直接作用するものではなく、数式ベースのソリューションが必要ですが、そのための本当に優れたソリューションがあると思われる場合は、それも投稿してください。
私の解決策は次のとおりです。
base_cat <- function(x) c(x,1:(x-1),(x+1):100)
a_reg <- lm(y ~ x1 + x2 + factor(x3, levels=base_cat(30)) #suppose that x3 has draws from the integers 1 to 100.
除外されたカテゴリbylm
は、ファクターの最初のレベルであるため、で指定されたものがbase_cat()
最初のレベルになるようにレベルを並べ替え、残りを後に置きます。
他のアイデアはありますか?