Come utilizzare la funzione linest in vba (con esempio)


È possibile utilizzare il metodo LinEst in VBA per adattare un modello di regressione lineare.

Questa funzione utilizza la seguente sintassi di base:

 LinEst(Arg1, Arg2, Arg3, Arg4)

Oro:

  • Arg1 : insieme di valori y
  • Arg2 : insieme di valori x
  • Arg3 (opzionale) : TRUE = calcola normalmente l’intercettazione, FALSE = forza l’intercettazione a zero
  • Arg4 (facoltativo) : TRUE = calcola statistiche di regressione aggiuntive, FALSE = calcola solo coefficienti

L’esempio seguente mostra come utilizzare il metodo LinEst per adattare praticamente un modello di regressione in VBA.

Esempio: come utilizzare la funzione LinEst in VBA

Supponiamo di avere il seguente set di dati che contiene una variabile predittore (x) e una variabile di risposta (y):

Possiamo creare la seguente macro che utilizza il metodo LinEst per adattare un semplice modello di regressione lineare a questo set di dati:

 Sub UseLinEst()
Range(" D1:E1 ") = WorksheetFunction.LinEst(Range(" B2:B15 "), Range(" A2:A15 "))
End Sub

Quando eseguiamo questa macro, riceviamo il seguente output:

I valori dei risultati rappresentano i coefficienti del modello di regressione:

  • Il coefficiente per β 0 è 3,52169 .
  • Il coefficiente per β1 è 0,693717 .

Utilizzando questi valori, possiamo scrivere l’equazione per questo semplice modello di regressione:

y = 3,52169 + 0,693717(x)

Interpretiamo ciò nel senso che ogni ulteriore aumento di un’unità nella variabile predittrice x è associato a un aumento medio di 0,693717 nella variabile di risposta y.

Interpretiamo il termine originale nel senso che quando x è zero, il valore medio di y è 3.52169 .

Se vogliamo utilizzare il metodo LinEst per produrre statistiche di regressione aggiuntive, possiamo utilizzare la seguente sintassi:

 Sub UseLinEst()
Range(" D1:E5 ") = WorksheetFunction.LinEst(Range(" B2:B15 "), Range(" A2:A15 "), True, True)
End Sub

Quando eseguiamo questa macro, riceviamo il seguente output:

La schermata seguente fornisce una spiegazione di ciascun valore nel risultato:

Fornendo True all’ultimo argomento del metodo LinEst , possiamo calcolare diverse statistiche di regressione aggiuntive.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:

VBA: come classificare un elenco di valori
VBA: come calcolare la deviazione standard dell’intervallo
VBA: come calcolare la media ponderata

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *