PDF version (NAG web site
, 64-bit version, 64-bit version)
NAG Toolbox: nag_correg_coeffs_pearson (g02ba)
Purpose
nag_correg_coeffs_pearson (g02ba) computes means and standard deviations of variables, sums of squares and cross-products of deviations from means, and Pearson product-moment correlation coefficients for a set of data.
Syntax
Note: the interface to this routine has changed since earlier releases of the toolbox:
At Mark 22: |
n was made optional |
Description
The input data consist of
observations for each of
variables, given as an array
where
is the
th observation on the
th variable.
The quantities calculated are:
(a) |
Means:
|
(b) |
Standard deviations:
|
(c) |
Sums of squares and cross-products of deviations from means:
|
(d) |
Pearson product-moment correlation coefficients:
If or is zero, is set to zero. |
References
None.
Parameters
Compulsory Input Parameters
- 1:
– double array
-
ldx, the first dimension of the array, must satisfy the constraint
.
must be set to , the th observation on the th variable, for and .
Optional Input Parameters
- 1:
– int64int32nag_int scalar
-
Default:
the first dimension of the array
x.
, the number of observations or cases.
Constraint:
.
- 2:
– int64int32nag_int scalar
-
Default:
the second dimension of the array
x.
, the number of variables.
Constraint:
.
Output Parameters
- 1:
– double array
-
The mean value,
, of the th variable, for .
- 2:
– double array
-
The standard deviation,
, of the th variable, for .
- 3:
– double array
-
is the cross-product of deviations , for and .
- 4:
– double array
-
is the product-moment correlation coefficient between the th and th variables, for and .
- 5:
– int64int32nag_int scalar
unless the function detects an error (see
Error Indicators and Warnings).
Error Indicators and Warnings
Errors or warnings detected by the function:
-
-
-
-
-
-
On entry, | , |
or | , |
or | . |
-
An unexpected error has been triggered by this routine. Please
contact
NAG.
-
Your licence key may have expired or may not have been installed correctly.
-
Dynamic memory allocation failed.
Accuracy
nag_correg_coeffs_pearson (g02ba) does not use additional precision arithmetic for the accumulation of scalar products, so there may be a loss of significant figures for large .
Further Comments
The time taken by nag_correg_coeffs_pearson (g02ba) depends on and .
The function uses a two-pass algorithm.
Example
This example reads in a set of data consisting of five observations on each of three variables. The means, standard deviations, sums of squares and cross-products of deviations from means, and Pearson product-moment correlation coefficients for all three variables are then calculated and printed.
Open in the MATLAB editor:
g02ba_example
function g02ba_example
fprintf('g02ba example results\n\n');
x = [ 2, 3, 3;
4, 6, 4;
9, 9, 0;
0, 12, 2;
12, -1, 5];
[n,m] = size(x);
fprintf('Number of variables (columns) = %d\n', m);
fprintf('Number of cases (rows) = %d\n\n', n);
disp('Data matrix is:-');
disp(x);
[xbar, std, ssp, r, ifail] = g02ba( ...
x);
fprintf('Variable Mean St. dev.\n');
fprintf('%5d%11.4f%11.4f\n',[[1:m]' xbar std]');
fprintf('\nSums of squares and cross-products of deviations\n');
disp(ssp)
fprintf('Correlation coefficients\n');
disp(r);
g02ba example results
Number of variables (columns) = 3
Number of cases (rows) = 5
Data matrix is:-
2 3 3
4 6 4
9 9 0
0 12 2
12 -1 5
Variable Mean St. dev.
1 5.4000 4.9800
2 5.8000 5.0695
3 2.8000 1.9235
Sums of squares and cross-products of deviations
99.2000 -57.6000 6.4000
-57.6000 102.8000 -29.2000
6.4000 -29.2000 14.8000
Correlation coefficients
1.0000 -0.5704 0.1670
-0.5704 1.0000 -0.7486
0.1670 -0.7486 1.0000
PDF version (NAG web site
, 64-bit version, 64-bit version)
© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2015