私の因子列をダミー変数に変換しようとしています:
str(cards$pointsBin)
# Factor w/ 5 levels ".lte100",".lte150",..: 3 2 3 1 4 4 2 2 4 4 ...
labels <- model.matrix(~ pointsBin, data=cards)
head(labels)
# (Intercept) pointsBin.lte150 pointsBin.lte200 pointsBin.lte250 pointsBin.lte300
# 741 1 0 0 0 0
# 407 1 1 0 0 0
# 676 1 0 0 1 0
# 697 1 1 0 0 0
# 422 1 0 1 0 0
# 300 1 0 1 0 0
因子(".lte100"
)の最初の値の列はありません。これは、最初の行を分類する必要があるものです。このデータを取得するにはどうすればよいですか?そして、すべて1のように見えるインターセプト列はどういう意味ですか?
3
"K"ダミー変数がある場合、結果のモデルにはa。)切片項(1の列)とb。) "K-1"追加列があります。その理由は、そうしないと、結果の行列の列が線形独立にならないためです(その結果、OLSを実行できません)。
—
Steve S
なぜ「意味がない」のですか?これは同じモデルで、適合度は同じですが、パラメーター化の方法が異なります。
—
Wolfgang
@SteveS:実際、Rはとてもフレンドリーなので
—
Scortchi-モニカの回復
- 1
、(この質問のように)因子として表される単一のカテゴリカル予測子があるときに切片を削除しようとすると 、それが本当に意味するものではなく、合計を使用するように切り替えると仮定しますゼロへのコーディング; もちろん、これは単なる異なるパラメーター化です。あなたが私に尋ねれば、あまりにもフレンドリーです。
@SteveS:ありがとう。私はチェックするべきでした:それは細胞平均コーディングに切り替わります。それはあなたが期待することをしません、それはあなたが非常に正当に警告した起源を通して強制されたモデルに適合します(それはしかし、それが列の数値型のときそれをします)。
—
Scortchi-モニカの回復