0
は私のコードは
library(ISLR)
attach(Weekly)
train = (Weekly$Year < 2009)
Weekly.0910 = Weekly[!train, ]
glm.fit3 = glm(Direction ~ Lag2, data = Weekly, family = binomial, subset = train)
glm.fit4 = glm(Weekly$Direction ~ Weekly$Lag2, data = Weekly, family = binomial, subset = train)
glm.probs3 = predict.glm(glm.fit3, Weekly.0910, type = "response")
glm.pred3 = rep("Down" length(glm.probs3))
glm.pred3[glm.probs3 > 0.5] = "Up"
Direction.0910 = Direction[!train]
conf_mat2 = table(glm.pred3, Direction.0910)
で上記のコードは期待通りに動作しますが、私が代わりにglm.fit4
を使用する場合(そのはglm.fit3
と同一である必要がありますが)、Rプログラミング - ここで式パラメータでのドル記号でGLMを使用して問題
A:glm.fit4
とglm.fit3
への参照を交換し、その後、私は、テーブルでこのエラー
エラー(glm.pred4、Direction.0910)を取得しますLL引数はまた、同じ長さ
を持っている必要があります:警告メッセージ:
'NEWDATA' が見つかり104行が、変数は1089行のコード、感謝を更新
はい、数式にドル記号を使用しないでください。 'glm'は' data'引数を持っていますので、 '$'は必要ありません。また、「添付」しないでください。 – Gregor
Rスタジオでソース(program_name.R)を使ってこれを実行すると、attach関数を使用する必要がありますか?代わりのもの – FatTail
私はあなたが誤解しているかもしれないと思います。 'data'引数(すなわち' data = Weekly')を持つ関数の全ポイントは、列の名前に関して式を完全に指定することができ、Rはそのデータフレーム内の列を検索します。必要に応じて、文字ベクトルから数式を構築できますが、決して 'data $ y〜data $ x、data = data'を実行する必要はありません。 – joran