Programmer Guide/Command Reference/EVAL/corrfun: Difference between revisions

From STX Wiki
Jump to navigationJump to search
m (1 revision: Initial import)
No edit summary
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:{{SUBPAGENAME}}}}
{{DISPLAYTITLE:{{SUBPAGENAME}}}}
=====corrfun=====
Compute the autocorrelation or cross-correlation function.
 
;Usage:
{|
:{|class="keinrahmen"
|<code>corrfun(''x''<sub>vector</sub> {, ''n'' {, ''scale'' {, cyclic}}})</code>
| ... autocorrelation of ''x''
|-
|-
|corrfun(x, <var>lags</var>, <var>scale</var>)
|<code>corrfun(''x''<sub>vector</sub>, ''y''<sub>vector</sub> {, ''n'' {, ''scale'' {, cylic}}})</code>
|Calculate the coefficients 0..lags-1 of the auto-correlation function of the vector <var>x</var>.{|
| ... cross correlation of ''x'' and ''y''
|}
:;''x'', ''y'': data vectors
:;''n'': the number of lags; 0 < n < <code>ncol(''x'')</code> (default=<code>ncol(''x'')/2</code>)
:;''scale'': specifies the scaling of the function:
::{|class="keinrahmen"
|''scale=0''
| ... no scaling (default)
|-
|-
|
|''scale=1''
|
| ... "biased", each lag ''i'' is scaled by the length of ''x'' (<code>1/ncol(''x'')</code>)
|
|-
|-
|lags
|''scale=2''
|the number of coefficients
| ... "unbiased", each lag ''i'' is scaled by the number of correlated elements (<code>1/(ncol(''x'')-''i'')</code>)
|def.=nrow(x)/2
|}
:;''cyclic'': normal or cyclic indexing
::{|class="keinrahmen"
|''cyclic=0''
| ... normal (default); (<code>acf[i]=sum(x[t]*y[t+i], t=0..ncol(x)-1-i)<code>)
|-
|-
|scale
|''cyclic!=0'' 
|the scaling
| ... cyclic; (<code>acf[i]=sum(x[t]*y[(t+i)%ncol(x)], t=0..ncol(x)-1)<code>)
|def.=0
|-
|
|0=no scaling
|-
|
|1=scaling with "1 / nrow(x)",
|-
|
|2=scaling with "1 / (nrow(x) <nowiki>-</nowiki> lag)"
|}
|}


The result is a vector with <var>lags</var> elements.
;Result: The autocorrelation function of the data vector ''x'' or the cross correlation function of the vectors ''x'' and ''y''. The result is a scalar (if ''n''=1) or a vector with ''n'' elements.
|-
;See also: [[../corr|corr]]
|corrfun(x, <var>y</var>, <var>lags</var>, <var>scale</var>)
 
|Calculate the coefficients 0..lags-1 of the cross-correlation function of the vectors <var>x</var> and <var>y</var>. The parameters are the same as for the auto-correlation function.
[[../#Functions|<function list>]]
|}

Latest revision as of 09:39, 1 September 2023

Compute the autocorrelation or cross-correlation function.

Usage
corrfun(xvector {, n {, scale {, cyclic}}}) ... autocorrelation of x
corrfun(xvector, yvector {, n {, scale {, cylic}}}) ... 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)-i))
cyclic
normal or cyclic indexing
cyclic=0 ... normal (default); (acf[i]=sum(x[t]*y[t+i], t=0..ncol(x)-1-i))
cyclic!=0 ... cyclic; (acf[i]=sum(x[t]*y[(t+i)%ncol(x)], t=0..ncol(x)-1))
Result
The autocorrelation function of the data vector x or the cross correlation function of the vectors x and y. The result is a scalar (if n=1) or a vector with n elements.
See also
corr

<function list>

Navigation menu

Personal tools