Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Bygge Lineær Regresjon med NumPy | Enkel Lineær Regresjon
Lineær Regresjon med Python

Bygge Lineær Regresjon med NumPy

Sveip for å vise menyen

Du kjenner allerede til hva enkel lineær regresjon er og hvordan man finner linjen som passer best til dataene. Nå skal du gå gjennom alle trinnene for å bygge en lineær regresjon for et virkelig datasett.

Laste inn data

Vi har en fil, simple_height_data.csv, med dataene fra eksemplene våre. Vi skal laste inn filen og se nærmere på den:

123456
import pandas as pd file_link = 'https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/simple_height_data.csv' df = pd.read_csv(file_link) # Read the file print(df.head()) # Print the first 5 instances from a dataset

Datasettet har to kolonner: den første er 'Father', som er inndatafunksjonen, og den andre er 'Height', som er vår målvariabel.

Vi tilordner målverdiene til variabelen y og funksjonsverdiene til X, og lager et spredningsdiagram.

123456
import matplotlib.pyplot as plt X = df['Father'] # Assign the feature y = df['Height'] # Assign the target plt.scatter(X,y) # Build scatterplot plt.show()

Finne parametere

NumPy har en praktisk funksjon for å finne parameterne til lineær regresjon.

Funksjon polyfit

Lineær regresjon er en polynomregresjon av grad 1 (vi vil diskutere polynomregresjon i senere seksjoner). Derfor må vi sette deg=1 for å få parameterne for lineær regresjon.
Her er et eksempel:

12345
import numpy as np beta_1, beta_0 = np.polyfit(X, y, 1) # Get the parameters print('beta_0 is', beta_0) print('beta_1 is', beta_1)
Note
Merk

Hvis du ikke er kjent med syntaksen beta_1, beta_0 = np.polyfit(X,y,1), kalles dette oppakking. Hvis du har en iterator (f.eks. liste, NumPy-array eller pandas-serie) som har to elementer, vil

a, b = my_iterator

være det samme som

a = my_iterator[0]
b = my_iterator[1]

Og siden returverdien fra funksjonen polyfit() er et NumPy-array med to verdier, kan vi gjøre dette.

Lage prediksjoner

Nå kan vi plotte linjen og predikere nye variabler ved å bruke parameterne.

123
plt.scatter(X,y) # Build a scatter plot plt.plot(X, beta_0 + beta_1 * X, color='red') # Plot the line plt.show()

Nå som vi har parameterne, kan vi bruke lineær regresjonslikningen til å forutsi nye verdier.

123
X_new = np.array([65, 70, 75]) # Feature values of new instances y_pred = beta_0 + beta_1 * X_new # Predict the target print('Predicted y: ', y_pred)

Det er altså ganske enkelt å finne parameterne til lineær regresjon. Men noen biblioteker kan også gi deg tilleggsinformasjon.

question mark

Du kan finne parameterne for enkel lineær regresjon ved å bruke NumPy-funksjonen:

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 3

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Bygge Lineær Regresjon med NumPy

Du kjenner allerede til hva enkel lineær regresjon er og hvordan man finner linjen som passer best til dataene. Nå skal du gå gjennom alle trinnene for å bygge en lineær regresjon for et virkelig datasett.

Laste inn data

Vi har en fil, simple_height_data.csv, med dataene fra eksemplene våre. Vi skal laste inn filen og se nærmere på den:

123456
import pandas as pd file_link = 'https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/simple_height_data.csv' df = pd.read_csv(file_link) # Read the file print(df.head()) # Print the first 5 instances from a dataset

Datasettet har to kolonner: den første er 'Father', som er inndatafunksjonen, og den andre er 'Height', som er vår målvariabel.

Vi tilordner målverdiene til variabelen y og funksjonsverdiene til X, og lager et spredningsdiagram.

123456
import matplotlib.pyplot as plt X = df['Father'] # Assign the feature y = df['Height'] # Assign the target plt.scatter(X,y) # Build scatterplot plt.show()

Finne parametere

NumPy har en praktisk funksjon for å finne parameterne til lineær regresjon.

Funksjon polyfit

Lineær regresjon er en polynomregresjon av grad 1 (vi vil diskutere polynomregresjon i senere seksjoner). Derfor må vi sette deg=1 for å få parameterne for lineær regresjon.
Her er et eksempel:

12345
import numpy as np beta_1, beta_0 = np.polyfit(X, y, 1) # Get the parameters print('beta_0 is', beta_0) print('beta_1 is', beta_1)
Note
Merk

Hvis du ikke er kjent med syntaksen beta_1, beta_0 = np.polyfit(X,y,1), kalles dette oppakking. Hvis du har en iterator (f.eks. liste, NumPy-array eller pandas-serie) som har to elementer, vil

a, b = my_iterator

være det samme som

a = my_iterator[0]
b = my_iterator[1]

Og siden returverdien fra funksjonen polyfit() er et NumPy-array med to verdier, kan vi gjøre dette.

Lage prediksjoner

Nå kan vi plotte linjen og predikere nye variabler ved å bruke parameterne.

123
plt.scatter(X,y) # Build a scatter plot plt.plot(X, beta_0 + beta_1 * X, color='red') # Plot the line plt.show()

Nå som vi har parameterne, kan vi bruke lineær regresjonslikningen til å forutsi nye verdier.

123
X_new = np.array([65, 70, 75]) # Feature values of new instances y_pred = beta_0 + beta_1 * X_new # Predict the target print('Predicted y: ', y_pred)

Det er altså ganske enkelt å finne parameterne til lineær regresjon. Men noen biblioteker kan også gi deg tilleggsinformasjon.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 3
some-alt