Mikä on predict() R-kielessä?
R:n predict() voit tehdä ennusteita uusille, näkymättömille tiedoille. Tämä funktio on tärkeä työkalu koneoppimisessa.
Mihin R:n predict()-funktiota käytetään?
R-funktio predict() on monipuolinen työkalu, jota käytetään ennustemallinnuksessa. Se tuottaa ennusteita uusille tai olemassa oleville datapisteille aiemmin suunniteltujen tilastollisten mallien, kuten lineaarisen regressioanalyysin, loogisen regressioanalyysin, päätöksentekopuun ja muiden mallinnustekniikoiden perusteella.
Mikä on predict()-funktion syntaksi R-kielessä?
R:n predict() ottaa argumentteina koulutetun mallin ja datapisteet, joihin ennusteen tulisi kohdistua. Voit määrittää erilaisia vaihtoehtoja ja parametreja käytetyn mallin tyypin perusteella. Tuloksena on ennusteiden vektori, joka voi olla hyödyllinen erilaisissa analyyttisissä tarkoituksissa, kuten mallin suorituskyvyn arvioinnissa, päätöksenteossa tai tuloksena saatujen tietojen havainnollistamisessa.
predict(object, newdata, interval)Robject: Koulutettu malli, johon ennusteet sovelletaannewdata: Ennusteen datapisteinterval: Valinnainen argumentti luottamusvälin tyypin syöttämiseksi (confidencekeskiarvon väli,predictionennusteet)
Esimerkki predict()-funktion käytöstä R-kielessä
Seuraava esimerkki havainnollistaa, miten predict() -funktio toimii R:ssä. Käytämme käyttäjän määrittämää tietojoukkoa, jossa on nopeus- ja etäisyysarvot.
Tietojen luominen ja näyttäminen
# 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)REnsin luomme käyttäjän määrittelemän tietojoukon nopeuden ja etäisyyden välisen suhteen arvioimiseksi. Käytämme funktiota data.frame() tietokehyksen luomiseen ja määritämme sitten muuttujien speed ja distance arvot vastaavasti c(15, 20, 25, 30, 35) ja c(30, 40, 50, 60, 70).
Kun olemme luoneet tietojoukon, näytämme sen print() -toiminnolla. Näin voimme tarkistaa uuden tietokehyksen rakenteen ja sille annetut arvot.
Tulos:
"Custom Data Frame:"
speed distance
1 15 30
2 20 40
3 25 50
4 30 60
5 35 70RLineaarisen mallin luominen
# 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))RTulos:
"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.01205RTuloksessa näemme lineaarisen mallin (custom_model), joka on luotu tietojoukkoa varten ja joka mallintaa nopeuden ja etäisyyden välistä suhdetta. Saamme mallin tuloksen, mukaan lukien kertoimet ja tilastotiedot.
Uusien nopeusarvojen määrittäminen ja ennusteiden tekeminen
# 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)ROlemme nyt luoneet toisen tietojoukon (new_speed_values), jossa on uudet nopeusarvot. Sitten käytimme R predict() ennusteiden tekemiseen vastaaville etäisyysarvoille käyttämällä edellä luomaamme lineaarista mallia.
Ennusteiden näyttäminen
# Displaying the predicted values
print("Predicted Distance Values:")
print(predicted_distance)RTuloksessa näkyvät nopeuden perusteella ennustetut etäisyysarvot:
"Predicted Distance Values:"
1 2 3 4 5
80.0000 90.0000 100.0000 110.0000 120.0000R