Hvad er predict() i R?
Med funktionen predict() i R kan du lave forudsigelser for nye, usete data. Denne funktion er et vigtigt værktøj til maskinlæring.
Hvad bruges predict() i R til?
R-funktionen predict() er et alsidigt værktøj, der bruges i prædiktiv modellering. Den genererer forudsigelser for nye eller eksisterende datapunkter baseret på tidligere designede statistiske modeller, såsom lineær regression, logisk regression, beslutningstræer og andre modelleringsteknikker.
Hvad er syntaksen for predict() i R?
R’s predict() tager som argumenter en trænet model og de datapunkter, som forudsigelsen skal gælde for. Du kan angive forskellige indstillinger og parametre baseret på den anvendte modeltype. Resultatet er en vektor af forudsigelser, der kan være nyttige til forskellige analytiske formål, herunder evaluering af en models ydeevne, beslutningstagning eller illustration af de resulterende data.
predict(object, newdata, interval)Robject: Den trænet model, som forudsigelserne anvendes pånewdata: Datapunktet for forudsigelseninterval: Valgfrit argument til indtastning af typen af konfidensinterval (confidencefor gennemsnitsinterval,predictionfor forudsigelser)
Eksempel på brug af predict() i R
Følgende eksempel illustrerer, hvordan funktionen predict() i R fungerer. Vi bruger et brugerdefineret datasæt med hastigheds- og afstandsværdier.
Oprettelse og visning af data
# Creating a data frame with custom speed and distance values
custom_data <- data.frame(speed = c(15, 20, 25, 30, 35),
distance = c(30, 40, 50, 60, 70))
# Displaying the custom data frame
print("Custom Data Frame:")
print(custom_data)RFørst opretter vi et brugerdefineret datasæt til evaluering af forholdet mellem hastighed og afstand. Vi bruger funktionen data.frame() til at oprette en dataramme og definerer derefter værdierne for variablerne speed og distance som henholdsvis c(15, 20, 25, 30, 35) og c(30, 40, 50, 60, 70).
Når vi har oprettet datasættet, viser vi det ved hjælp af funktionen print(). På den måde kan vi kontrollere strukturen og de tildelte værdier i vores nye dataramme.
Output:
"Custom Data Frame:"
speed distance
1 15 30
2 20 40
3 25 50
4 30 60
5 35 70ROprettelse af en lineær model
# Creating a linear model for the custom data frame
custom_model <- lm(distance ~ speed, data = custom_data)
# Printing the model results
print("Model Results:")
print(summary(custom_model))ROutput:
"Model Results:"
Call:
lm(formula = distance ~ speed, data = custom_data)
Residuals:
1 2 3 4 5
-2 -1 1 0 2
Coefficients:
(Intercept) -10.00 15.81 -0.632 0.55897
speed 2.00 0.47 4.254 0.01205RI outputtet ser vi en lineær model (custom_model), der blev genereret for datasættet og modellerer forholdet mellem hastighed og afstand. Vi får resultatet af modellen, herunder koefficienter og statistiske oplysninger.
Definition af nye hastighedsværdier og udarbejdelse af prognoser
# Creating a data frame with new speed values
new_speed_values <- data.frame(speed = c(40, 45, 50, 55, 60))
# Predicting future distance values using the linear model
predicted_distance <- predict(custom_model, newdata = new_speed_values)RVi har nu oprettet endnu et datasæt (new_speed_values) med nye værdier for hastighed. Derefter brugte vi R predict() til at lave forudsigelser for de tilsvarende afstandsværdier ved hjælp af den lineære model, vi oprettede ovenfor.
Visning af forudsigelserne
# Displaying the predicted values
print("Predicted Distance Values:")
print(predicted_distance)ROutputtet viser de afstandsværdier, der er forudsagt på baggrund af hastigheden:
"Predicted Distance Values:"
1 2 3 4 5
80.0000 90.0000 100.0000 110.0000 120.0000R