練習 - 使用 Numpy 執行線性迴歸

已完成

散佈圖提供以視覺化方式呈現資料的便利方法,但假設您想要將散佈圖與顯示資料隨時間變化趨勢的趨勢線重疊。 計算這類趨勢線的其中一個方法是 Linear regression (線性迴歸)。 在此練習中,您將使用 NumPy 執行線性迴歸,並使用 Matplotlib 從資料繪製趨勢線。

  1. 將資料指標置於筆記本底部的空白資料格上。 將資料格類型變更為 [Markdown],並輸入 "Perform linear regression" 作為文字。

  2. 新增 [程式碼] 資料格,然後貼上下列程式碼。 請花一點時間閱讀註解 (開頭為 # 符號的行),以了解程式碼的功用。

    # Creates a linear regression from the data points
    m,b = np.polyfit(yearsBase, meanBase, 1)
    
    # This is a simple y = mx + b line function
    def f(x):
        return m*x + b
    
    # This generates the same scatter plot as before, but adds a line plot using the function above
    plt.scatter(yearsBase, meanBase)
    plt.plot(yearsBase, f(yearsBase))
    plt.title('scatter plot of mean temp difference vs year')
    plt.xlabel('years', fontsize=12)
    plt.ylabel('mean temp difference', fontsize=12)
    plt.show()
    
    # Prints text to the screen showing the computed values of m and b
    print(' y = {0} * x + {1}'.format(m, b))
    plt.show()
    
  3. 現在,執行資料格以顯示使用迴歸線的散佈圖。

    使用迴歸線的散佈圖。

    使用迴歸線的散佈圖

從迴歸線中,您可以看到 30 年平均溫度及 5 年平均溫度之間的差異會隨著時間增加。 產生迴歸線所需大部分計算工作均由 NumPy 的 polyfit 函式完成,該函式會計算方程式 y = mx + b 中 mb 的值。