私は単純なlm関数を使用します。いくつかの係数にはNAがあります。 要約にNAを持つすべての係数を削除する新しい公式を作成するにはどうすればよいですか?要約にNAを持つすべての係数を削除する新しい公式を作成するにはどうすればよいですか?
例:
iris[which(iris$Species=="setosa"),]$Petal.Width<-1
iris$SomeFactor<-round(log(rgeom(n = nrow(iris),prob = 0.1)+1))
model<-list()
for(i in unique(iris$Species)){
data<-iris[which(iris$Species==i),]
model[[i]]<-lm(formula = formula("Sepal.Length~Sepal.Width +
Petal.Length + as.factor(SomeFactor)+
Petal.Width"),data = data)
}
model[["setosa"]]
Call:
lm(formula = formula("Sepal.Length~Sepal.Width + Petal.Length + Petal.Width"),
data = data)
Coefficients:
(Intercept) Sepal.Width Petal.Length Petal.Width
2.3037 0.6674 0.2834 NA
そして、私はグループのための式はPetal.Widthなしになるsetosaことをしたいです。
ちょうど:Sepal.Length~Sepal.Width + Petal.Length + SomeFactor2+ SomeFactor3
。
通常、ステップ関数を使用します。モデルから数式を取得します。 しかし、それには多くの時間がかかります。多くの係数を減らすことができます。
これは素晴らしいです。しかし、少し問題があります:彼にはNAがあるが、数式に係数がある場合、それは特定の要因の後に来る、drop.termsは彼を削除しません。 –
@AnnaBokovskaya質問の編集例を挙げることはできますか?もしそうなら、私はすぐにそれを見ることができるように、最後に入れてください。 –
ねえ、私は答えを編集しました。 –