R: la funzione predict() per la modellazione predittiva
La funzione predict()
in R svolge un compito particolare nel contesto dell’apprendimento automatico, in quanto permette di calcolare previsioni per dati nuovi, non ancora incontrati.
A cosa serve la funzione predict()
in R?
La funzione predict()
in R è uno strumento versatile, utilizzato nella modellazione predittiva. Serve a generare previsioni per punti di dati nuovi o già presenti sulla base di un modello statistico già progettato. Questo modello può essere creato, ad esempio, mediante regressione lineare, regressione logistica, alberi decisionali o altre tecniche di modellazione.
Come è strutturata la funzione predict()
in R
La funzione predict()
accetta come argomenti il modello addestrato e i punti di dati per i quali devono essere calcolate le previsioni. A seconda del tipo del modello è possibile specificare diverse opzioni e parametri. Il risultato è un vettore di previsioni che può essere poi utile per diversi scopi di analisi. Questi comprendono la valutazione delle prestazioni del modello, il processo decisionale o la visualizzazione dei dati risultanti.
predict(object, newdata, interval)
R- object: il modello addestrato sul quale devono essere applicate le previsioni.
- newdata: i punti di dati per le previsioni
-
interval: argomento opzionale per indicare il tipo di intervallo di confidenza (
confidence
per i valori medi,prediction
per le previsioni)
Esempio di applicazione della funzione predict
in R
L’esempio seguente mostra il funzionamento di predict()
in R. A tal fine utilizziamo un record di dati personalizzato con valori di velocità e distanza.
Creazione e visualizzazione dei dati
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)
RNel primo passaggio di questo esempio costruiamo un record di dati personalizzato per analizzare la relazione fra velocità (speed
) e distanza percorsa (distance
). A tal fine utilizziamo la funzione data.frame()
per creare un frame di dati. Con c(15, 20, 25, 30, 35)
e c(30, 40, 50, 60, 70)
definiamo dei valori concreti per le variabili speed
e distance
.
Dopo aver creato il record di dati, lo visualizziamo per mezzo della funzione print()
. In questo modo è possibile verificare visivamente la struttura e i valori assegnati del nuovo frame di dati.
Output:
"Custom Data Frame:"
speed distance
1 15 30
2 20 40
3 25 50
4 30 60
5 35 70
RCreazione di un modello lineare
# 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.01205
RNell’output si riconosce un modello lineare (custom_model
) che è stato generato per il record di dati e che modella la relazione fra velocità e distanza. Otteniamo quindi i risultati del modello, inclusi i coefficienti e le informazioni statistiche.
Definizione di nuovi valori di velocità e calcolo delle previsioni
# 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)
ROra definiamo un ulteriore record di dati (new_speed_values
) con nuovi valori di velocità. Successivamente, con predict()
in R vengono calcolate le previsioni per i relativi valori di distanza utilizzando il modello lineare creato in precedenza.
Visualizzazione delle previsioni
# Displaying the predicted values
print("Predicted Distance Values:")
print(predicted_distance)
RL’output ci mostra i valori di distanza previsti a seconda della velocità:
"Predicted Distance Values:"
1 2 3 4 5
80.0000 90.0000 100.0000 110.0000 120.0000
RSe vuoi sapere come elaborare le stringhe in R per la manipolazione dei testi e la pulizia dei dati, segui i tutorial su gsub e sub in R e substring in R che trovi nella nostra guida.
- Certificato SSL e protezione DDoS
- Velocità, flessibilità e scalabilità
- Dominio e consulente personale
- 1 anno gratis del gestionale di fatturazione elettronica FlexTax