Übung: Durchführen der linearen Regression mit NumPy

Abgeschlossen

Punktdiagramme stellen eine praktische Methode zur Visualisierung von Daten dar. Angenommen, Sie möchten in das Punktdiagramm eine Trendlinie einfügen, die den Trend der Daten im Laufe der Zeit anzeigt. Eine Möglichkeit, solche Trendlinien zu berechnen, ist die lineare Regression. In dieser Übung verwenden Sie NumPy, um eine lineare Regression durchzuführen, und Matplotlib zum Zeichnen einer Trendlinie der Daten.

  1. Platzieren Sie den Cursor in die leere Zelle unten im Notebook. Ändern Sie den Zellentyp in Markdown, und geben Sie als Text „Perform linear regression“ (Lineare Regression durchführen) ein.

  2. Fügen Sie eine Codezelle hinzu, und fügen Sie den folgenden Code ein. Lesen Sie sich die Kommentare (die Zeilen mit einem #-Zeichen am Anfang) durch, um zu verstehen, was der Code bewirkt.

    # 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. Führen Sie die Zelle nun aus, um ein Punktdiagramm mit einer Regressionsgeraden anzuzeigen.

    Scatter plot with regression line.

    Punktdiagramm mit Regressionsgerade

Anhand der Regressionsgerade ist zu erkennen, dass sich der Unterschied zwischen 30-Jahre-Durchschnittstemperaturen und 5-Jahre-Durchschnittstemperaturen mit der Zeit vergrößert. Der größte Rechenaufwand für die Erstellung der Regressionsgerade wurde von der polyfit-Funktion von NumPy aufgebracht, die die Werte m und b in der Gleichung y = mx + b berechnet hat.