Ho provato a guardare un pò le formule matematiche ma tutte quelle che ho trovato negli esempi fanno uso di due vettori di uguale dimensione, io invece ho un vettore di 9 elementi e uno a quanto pare per come la formalu di excel prende i valori di 18 elementi...
E' questa cosa che mi ha mandato in confusione e non riesco a comprendere...
Perchè sennò avevo trovato anche la seguente funzione per calcolare la regressione e penso mi sarebbe tornata utile, ma non la posso usare o non so come usarla avendo due array di diversa dimensione
function regressione($X,$Y)
{
if (!is_array($X) && !is_array($Y)) return false;
if (count($X) <> count($Y)) return false;
if (empty($X) || empty($Y)) return false;
$regres = array();
$n = count($X);
$mx = array_sum($X)/$n; // media delle x
$my = array_sum($Y)/$n; // media delle y
$sxy = 0;
$sxsqr = 0;
for ($i=0;$i<$n;$i++){
$sxy += ($X[$i] - $mx) * ($Y[$i] - $my);
$sxsqr += pow(($X[$i] - $mx),2); // somma degli scarti quadratici medi
}
$m = $sxy / $sxsqr; // coefficiente angolare
$q = $my - $m * $mx; // termine noto
for ($i=0;$i<$n;$i++){
$regres[$i] = $m * $X[$i] + $q;
}
return $regres;
}