Skip to content

Instantly share code, notes, and snippets.

@radityopw
Created January 8, 2012 12:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save radityopw/1578186 to your computer and use it in GitHub Desktop.
Save radityopw/1578186 to your computer and use it in GitHub Desktop.
Correlation over 2 arrays
<?php
function my_correlation($a_x,$a_y){
$len = count($a_x);
$jml_x = 0;
$jml_y = 0;
$jml_xy = 0;
$jml_xx = 0;
$jml_yy = 0;
$a_xy = array();
$a_xx = array();
$a_yy = array();
for($i = 0; $i<$len; $i++){
$jml_x = $jml_x + $a_x[$i];
$jml_y = $jml_y + $a_y[$i];
$a_xy[$i] = $a_x[$i] * $a_y[$i];
$jml_xy = $jml_xy + $a_xy[$i];
$a_xx[$i] = $a_x[$i] * $a_x[$i];
$jml_xx = $jml_xx + $a_xx[$i];
$a_yy[$i] = $a_y[$i] * $a_y[$i];
$jml_yy = $jml_yy + $a_yy[$i];
}
$n = sqrt((($len * $jml_xx) - ($jml_x * $jml_x)) * (($len * $jml_yy) - ($jml_y * $jml_y)));
$cor = (($len * $jml_xy) - (($jml_x) * ($jml_y))) / $n;
return $cor;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment