始める無料で始める

手作業で特徴量を設計する

チームでリサーチを進める中で、二つの物体間に働く万有引力はニュートンの式に従うことを思い出します。

$$F = G\frac{m_1m_2}{r^2}$$.

質量は不明なので式をそのまま使うことはできませんが、forceinv_square_distance の関数として回帰モデルに当てはめることはできます。前の演習で作成した拡張済みデータセット df は読み込まれています。

この演習はコースの一部です

Rで学ぶ特徴量エンジニアリング

コースを見る

演習の手順

  • 距離の二乗の逆数として定義される新しい変数 inv_square_distance を作成し、データフレーム df に追加します。
  • lm() を使って、forceinv_square_distance の単回帰モデルを作成し、lr_force_2 として保存します。
  • 予測値を df_inverse に結合します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Create a new variable inv_square_distance
df_inverse <- df %>% ___(inv_square_distance = 1/distance^2)

# Build a simple regression model
lr_force_2 <- lm(force ~ ___, data = df_inverse)

# Bind your predictions to df_inverse
df_inverse <- df_inverse %>% ___(lr2_pred = predict(lr_force_2))

df_inverse %>% ggplot(aes(x = distance, y = force)) +
  geom_point() +
  geom_line(aes(y = lr2_pred), col = "blue", lwd = .75) +
  ggtitle("Linear regression of force vs. inv_square_distance") +
  theme_classic()
コードを編集して実行