GAMでダイズの成長をモデリングする
この演習では、ダイズ(soybean)における平均葉重を、(植え付け後の)時間の関数としてモデリングします。 ご覧のとおり、ダイズは一定の速度で成長するのではなく、「成長スパート」を経て徐々に伸びが鈍化します。したがって、葉重は線形モデルではうまく表現できません。
数式(formula)内で、どの変数を非線形にモデリングするかは、s()(docs)関数で指定できます。
y ~ s(x)
また、パッケージmgcvのgam()(docs)の呼び出しは次のとおりです。
gam(formula, family, data)
通常の回帰では、family = gaussian(デフォルト)を使用します。
ダイズの学習用データsoybean_trainはあらかじめ読み込まれています。2つの列、目的変数weightと変数Timeを含みます。比較のため、数式weight ~ Timeで当てはめた線形モデルmodel.linもすでに読み込まれています。
この演習はコースの一部です
R による Supervised Learning:回帰
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# soybean_train is available
summary(soybean_train)
# Plot weight vs Time (Time on x axis)
ggplot(soybean_train, aes(x = ___, y = ___)) +
geom_point()