S funkcijo predict() v R lahko na­po­ve­du­je­te nove, nevidne podatke. Ta funkcija je pomembno orodje za strojno učenje.

Za kaj se uporablja predict() v R?

Funkcija R predict() je vse­stran­sko orodje, ki se uporablja v pre­dik­tiv­nem mo­de­li­ra­nju. Na podlagi predhodno obli­ko­va­nih sta­ti­stič­nih modelov, kot so linearna regresija, logična regresija, od­lo­če­val­na drevesa in druge modelirne tehnike, ustvarja napovedi za nove ali obstoječe po­dat­kov­ne točke.

Kakšna je sintaksa za predict() v R?

Funkcija R’s predict() sprejema kot argumente uspo­so­bljen model in po­dat­kov­ne točke, na katere naj se napoved nanaša. Glede na vrsto upo­ra­blje­ne­ga modela lahko določite različne možnosti in parametre. Rezultat je vektor napovedi, ki je lahko koristen za različne ana­li­tič­ne namene, vključno z oce­nje­va­njem učin­ko­vi­to­sti modela, spre­je­ma­njem odločitev ali po­na­zo­ri­tvi­jo re­zul­ta­tnih podatkov.

predict(object, newdata, interval)
R
  • object: Uspo­so­bljen model, na katerega se napovedi nanašajo
  • newdata: Po­dat­kov­na točka za napoved
  • interval: Izbirni argument za vnos vrste intervala zaupanja (confidence za interval srednje vrednosti, prediction za napovedi)

Primer uporabe funkcije predict() v R

Naslednji primer ponazarja delovanje funkcije predict() v R. Uporabili bomo upo­rab­ni­ško definiran niz podatkov z vre­dnost­mi hitrosti in razdalje.

Ustvar­ja­nje in pri­ka­zo­va­nje podatkov

# 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)
R

Najprej bomo ustvarili upo­rab­ni­ško definiran niz podatkov za oceno razmerja med hitrostjo in razdaljo. Uporabili bomo funkcijo data.frame() za ustvar­ja­nje po­dat­kov­ne­ga okvira, nato pa bomo vrednosti za spre­men­ljiv­ki speed in distance de­fi­ni­ra­li kot c(15, 20, 25, 30, 35) oziroma c(30, 40, 50, 60, 70).

Ko bomo ustvarili niz podatkov, ga bomo prikazali s funkcijo print(). Na ta način lahko preverimo strukturo in dodeljene vrednosti našega novega po­dat­kov­ne­ga okvira.

Izhod:

"Custom Data Frame:"
    speed distance
1        15        30
2        20        40
3        25        50
4        30        60
5        35        70
R

Ustvar­ja­nje linearne modela

# 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))
R

Izhod:

"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.01205
R

V izhodnih podatkih vidimo linearni model (custom_model), ki je bil ustvarjen za niz podatkov in modelira razmerje med hitrostjo in razdaljo. Dobimo rezultat modela, vključno s ko­e­fi­ci­en­ti in sta­ti­stič­ni­mi podatki.

Določanje novih vrednosti hitrosti in na­po­ve­do­va­nje

# 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)
R

Sedaj smo ustvarili še en niz podatkov (new_speed_values) z novimi vre­dnost­mi za hitrost. Nato smo z R predict() na­po­ve­da­li ustrezne vrednosti razdalje z uporabo linearne modela, ki smo ga ustvarili zgoraj.

Prikaz napovedi

# Displaying the predicted values
print("Predicted Distance Values:")
print(predicted_distance)
R

Izhod prikazuje vrednosti razdalje, na­po­ve­da­ne na podlagi hitrosti:

"Predicted Distance Values:"
               1                2                  3                 4                   5
 80.0000     90.0000    100.0000  110.0000     120.0000
R
Go to Main Menu