2016-06-29 8 views
1

私は、GAMスムージング関数のプロットとyの制限を調整して、異なる季節の2つの異なるGAMモデルの効果をより簡単に比較したいと考えています。 plot.gam関数でylimオプションを使用している場合、スムージング機能ではy軸のみ変更できますが、要因では変更できません。例えばMGCV GAM factorプロットでy軸を変更する方法は?

:第2のプロットで

library(mgcv) 
data(cars) 
Gam1 <- gam(Price~s(Mileage)+factor(Cylinder), data=cars, family="gaussian") 

plot.gam(Gam1, shade=T, pages=1, all.terms=T, rug=FALSE) 
plot.gam(Gam1, shade=T, pages=1, ylim=c(-8000,8000), all.terms=T, rug=FALSE) 

、滑らかな変化ではなく因子にのみ、Y限界。ここで何が起こっているのですか?どうすれば修正できますか?

答えて

1

plot.gam()コードを見る限り、実現するのは難しいです。 plot()termplot()を使って2つのプロットを別々に描画したほうがよいでしょう。

library(caret); library(mgcv) 
data(cars) 
Gam1 <- gam(Price ~ s(Mileage) + as.factor(Cylinder), data=cars, family="gaussian") 

par(mfrow=c(1,2)) 
plot(Gam1, shade=T, all.terms=F, rug=FALSE, ylim=c(-5000, 8000)) 
termplot(Gam1, se=T, ylim=c(-5000, 30000), ask=F, col.term = 1, col.se = 1) 
par(mfrow=c(1,1)) 

enter image description here

+0

はい!これは完全に機能しました。ご協力いただきありがとうございます! – anorca

関連する問題