Programmer Guide/Command Reference/EVAL/corrfun: Difference between revisions
From STX Wiki
< Programmer Guide | Command Reference | EVAL
Jump to navigationJump to search
No edit summary |
No edit summary |
||
Line 17: | Line 17: | ||
|''scale=1'' ||... "biased", each lag ''i'' is scaled by the length of ''x'' (<code>1/ncol(''x'')</code>) | |''scale=1'' ||... "biased", each lag ''i'' is scaled by the length of ''x'' (<code>1/ncol(''x'')</code>) | ||
|''scale=2'' ||... "unbiased", each lag ''i'' is scaled by the number of correlated elements (<code>1/(ncol(''x'')-1)</code>) | |''scale=2'' ||... "unbiased", each lag ''i'' is scaled by the number of correlated elements (<code>1/(ncol(''x'')-1)</code>) | ||
|} | |||
;Result 1: The correlecation coefficient ''r'' (product-moment correlation) of the vectors ''x'' and ''y''. | ;Result 1: The correlecation coefficient ''r'' (product-moment correlation) of the vectors ''x'' and ''y''. | ||
:<code>''r'' = var(''x'', ''y'') / sqrt( var(''x'') * var(''y'') )</code> | :<code>''r'' = var(''x'', ''y'') / sqrt( var(''x'') * var(''y'') )</code> |
Revision as of 14:22, 8 April 2011
Compute the autocorrelation or cross-correlation function.
- Usage
corrfun(xvector {, n {, scale}})
... autocorrelation of x corrfun(xvector, yvector {, n {, scale}})
... cross correlation of x and y
- x, y
- data vectors
- n
- the number of lags; 0 < n <
ncol(x)
(default=ncol(x)/2
) - scale
- specifies the scaling of the function:
scale=0 ... no scaling (default) scale=1 ... "biased", each lag i is scaled by the length of x ( 1/ncol(x)
)scale=2 ... "unbiased", each lag i is scaled by the number of correlated elements ( 1/(ncol(x)-1)
)
- Result 1
- The correlecation coefficient r (product-moment correlation) of the vectors x and y.
r = var(x, y) / sqrt( var(x) * var(y) )
- Usage 1
var(xvector, yvector)
- Result 1
- The correlecation coefficient r (product-moment correlation) of the vectors x and y.
r = var(x, y) / sqrt( var(x) * var(y) )
- Usage 2
var(xmatrix)
var(xmatrix, yscalar)
var(xmatrix, yvector)
- Result 2
- The correlation matrix r of the column vectors of x.
r[i,j] = var(x[*,i], x[*,j]) / sqrt( var(x[*,i]) * var(x[*,j]) ) , with: i,j = 0..ncol(x)-1
- If the argument y is supplied, it is used as column average like for the computation of the covariance matrix.
corrfun
corrfun(x, lags, scale) | ||
lags | the number of coefficients | def.=nrow(x)/2 |
scale | the scaling | def.=0 |
0=no scaling | ||
1=scaling with "1 / nrow(x)", | ||
2=scaling with "1 / (nrow(x) - lag)" |
The result is a vector with lags elements. |- |corrfun(x, y, lags, scale) |Calculate the coefficients 0..lags-1 of the cross-correlation function of the vectors x and y. The parameters are the same as for the auto-correlation function. |}