始める無料で始める

線形回帰アルゴリズム

線形回帰を本当の意味で理解するには、アルゴリズムの仕組みを知ることが役立ちます。ols() のコードは数百行にも及びますが、これはどんな数式やデータセットにも対応できるようにするためです。しかし、単一のデータセットに対するシンプルな線形回帰であれば、わずか数行のコードでアルゴリズムを実装できます。

作業の流れは次のとおりです。

  • まず、次の一般的な構文を使って、二乗和を計算する関数を作成します。
def function_name(args):
  # some calculations with the args
  return outcome
  • 次に、scipy の minimize 関数を使い、この関数を最小化する係数を求めます。

説明変数の値(taiwan_real_estate の n_convenience 列)は x_actual として、応答変数の値(taiwan_real_estate の price_twd_msq 列)は y_actual として、それぞれ用意されています。

minimize() も読み込み済みです。

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

statsmodels を使った中級 Regression

コースを見る

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

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

# Complete the function
def calc_sum_of_squares(coeffs):
    # Unpack coeffs
    ____, ____ = ____
    # Calculate predicted y-values
    y_pred = ____ + ____ * ____
    # Calculate differences between y_pred and y_actual
    y_diff = ____ - ____
    # Calculate sum of squares
    sum_sq = ____
    # Return sum of squares
    return sum_sq
  
# Test the function with intercept 10 and slope 1
print(calc_sum_of_squares([10, 1]))
コードを編集して実行