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

From STX Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 14: Line 14:
:;''scale'': specifies the scaling of the function:
:;''scale'': specifies the scaling of the function:
::{|class=keinrahmen"
::{|class=keinrahmen"
|''scale=0'' ||... no scaling (default)
|''scale=0''  
|''scale=1'' ||... "biased", each lag ''i'' is scaled by the length of ''x'' (<code>1/ncol(''x'')</code>)
| ... no scaling (default)
|''scale=2'' ||... "unbiased", each lag ''i'' is scaled by the number of correlated elements (<code>1/(ncol(''x'')-1)</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>)
|}
|}
;Result 1: The correlecation coefficient ''r'' (product-moment correlation) of the vectors ''x'' and ''y''.
;Result: The autocorrelation of the data vector ''x'' or the cross correlation function of the two vector ''x'' and ''y''. The result is a scalar (if ''n''=1) or a vector with ''n'' elements.
:<code>''r'' = var(''x'', ''y'') / sqrt( var(''x'') * var(''y'') )</code>
----
;Usage 1: '''<code>var(''x''<sub>vector</sub>, ''y''<sub>vector</sub>)</code>'''
;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>
----
;Usage 2: '''<code>var(''x''<sub>matrix</sub>)</code>'''
:'''<code>var(''x''<sub>matrix</sub>, ''y''<sub>scalar</sub>)</code>'''
:'''<code>var(''x''<sub>matrix</sub>, ''y''<sub>vector</sub>)</code>'''
;Result 2: The correlation matrix ''r'' of the column vectors of ''x''.
:<code>''r''[i,j] = var(''x[*,i]'', ''x''[*,j]) / sqrt( var(''x''[*,i]) * var(''x''[*,j]) ) , with: i,j = 0..ncol(''x'')-1</code>
:If the argument ''y'' is supplied, it is used as column average like for the computation of the [[Programmer_Guide/Command_Reference/EVAL/var|covariance matrix]].


;See also: [[Programmer_Guide/Command_Reference/EVAL/avr|avr]], [[Programmer_Guide/Command_Reference/EVAL/dev|dev]], [[Programmer_Guide/Command_Reference/EVAL/var|var]], [[Programmer_Guide/Command_Reference/EVAL/corrfun|corrfun]]
;See also: [[Programmer_Guide/Command_Reference/EVAL/corr|corr]]


[[Programmer_Guide/Command_Reference/EVAL#Functions|<function list>]]
[[Programmer_Guide/Command_Reference/EVAL#Functions|<function list>]]
{{DISPLAYTITLE:{{SUBPAGENAME}}}}
=====corrfun=====
{|
|-
|corrfun(x, <var>lags</var>, <var>scale</var>)
|Calculate the coefficients 0..lags-1 of the auto-correlation function of the vector <var>x</var>.{|
|-
|
|
|
|-
|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) <nowiki>-</nowiki> lag)"
|}
The result is a vector with <var>lags</var> elements.
|-
|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.
|}

Revision as of 14:26, 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
The autocorrelation of the data vector x or the cross correlation function of the two vector 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