データを適合させ、より広いx範囲のy値を予測したいと思います。より広い範囲を予測する
これはフィッティングプロット
私はこのデータに合うようにしたいです私は「アイリス」のデータが設定されており、このpost
library(dplyr)
cc <- iris %>%
group_by(Species) %>%
do({
mod <- nlsLM(Sepal.Length ~ k*Sepal.Width/2+U, start=c(k=10,U=5), data = ., trace=F, control = nls.lm.control(maxiter=100))
pred <- predict(mod, newdata =.["Sepal.Width"])
data.frame(., pred)
})
からの予測のために、以下のデータを使用すると仮定しますより広いSepal width
の範囲は、
new.range<- data.frame(x=seq(2,10,length.out=20))
と
pred <- predict(mod, newdata =new.range)
は(関数内new.rangeフィッティング
library(ggplot2)
ggplot(cc,aes(y=Sepal.Length,x=Sepal.Width ,col=factor(Species)))+
geom_point()+
facet_wrap(~Species)+
geom_line(aes(x=new.range,y=pred),size=1)
エラーをプロットするためにスクリプトを変更(...、row.names = NULL、check.rows = FALSE、 check.namesは= TRUE、これを取得する理由 20は、150
私は理解することはできません:引数は行数が異なる暗示しますエラー。 new.range
からはpred
が計算されるので、同じ長さにする必要がありますか?
同様の記事
trouble-with-predict-function-in-r
predict-maybe-im-not-understanding-it?
modの代わりに 'cc $ mod'を呼び出す必要がありますか? – troh
@troh cc $ modを試したとき、 'Error in predict(mod、newdata = new.range):オブジェクト 'mod' not found' – Alexander