NAG FL Interface
g02bkf (coeffs_zero_subset)
1
Purpose
g02bkf computes means and standard deviations, sums of squares and cross-products about zero, and correlation-like coefficients for selected variables.
2
Specification
Fortran Interface
Subroutine g02bkf ( |
n, m, x, ldx, nvars, kvar, xbar, std, sspz, ldsspz, rz, ldrz, ifail) |
Integer, Intent (In) |
:: |
n, m, ldx, nvars, kvar(nvars), ldsspz, ldrz |
Integer, Intent (Inout) |
:: |
ifail |
Real (Kind=nag_wp), Intent (In) |
:: |
x(ldx,m) |
Real (Kind=nag_wp), Intent (Inout) |
:: |
sspz(ldsspz,nvars), rz(ldrz,nvars) |
Real (Kind=nag_wp), Intent (Out) |
:: |
xbar(nvars), std(nvars) |
|
C Header Interface
#include <nag.h>
void |
g02bkf_ (const Integer *n, const Integer *m, const double x[], const Integer *ldx, const Integer *nvars, const Integer kvar[], double xbar[], double std[], double sspz[], const Integer *ldsspz, double rz[], const Integer *ldrz, Integer *ifail) |
|
C++ Header Interface
#include <nag.h> extern "C" {
void |
g02bkf_ (const Integer &n, const Integer &m, const double x[], const Integer &ldx, const Integer &nvars, const Integer kvar[], double xbar[], double std[], double sspz[], const Integer &ldsspz, double rz[], const Integer &ldrz, Integer &ifail) |
}
|
The routine may be called by the names g02bkf or nagf_correg_coeffs_zero_subset.
3
Description
The input data consists of
observations for each of
variables, given as an array
where
is the
th observation on the
th variable, together with the subset of these variables,
, for which information is required.
The quantities calculated are:
-
(a)Means:
-
(b)Standard deviations:
-
(c)Sums of squares and cross-products about zero:
-
(d)Correlation-like coefficients:
If or is zero, is set to zero.
4
References
None.
5
Arguments
-
1:
– Integer
Input
-
On entry: , the number of observations or cases.
Constraint:
.
-
2:
– Integer
Input
-
On entry: , the number of variables.
Constraint:
.
-
3:
– Real (Kind=nag_wp) array
Input
-
On entry: must be set to , the value of the th observation on the th variable, for and .
-
4:
– Integer
Input
-
On entry: the first dimension of the array
x as declared in the (sub)program from which
g02bkf is called.
Constraint:
.
-
5:
– Integer
Input
-
On entry: , the number of variables for which information is required.
Constraint:
.
-
6:
– Integer array
Input
-
On entry:
must be set to the column number in
x of the
th variable for which information is required, for
.
Constraint:
, for .
-
7:
– Real (Kind=nag_wp) array
Output
-
On exit: the mean value,
, of the variable specified in , for .
-
8:
– Real (Kind=nag_wp) array
Output
-
On exit: the standard deviation,
, of the variable specified in , for .
-
9:
– Real (Kind=nag_wp) array
Output
-
On exit: is the cross-product about zero, , for the variables specified in and , for and .
-
10:
– Integer
Input
-
On entry: the first dimension of the array
sspz as declared in the (sub)program from which
g02bkf is called.
Constraint:
.
-
11:
– Real (Kind=nag_wp) array
Output
-
On exit: is the correlation-like coefficient, , between the variables specified in and , for and .
-
12:
– Integer
Input
-
On entry: the first dimension of the array
rz as declared in the (sub)program from which
g02bkf is called.
Constraint:
.
-
13:
– Integer
Input/Output
-
On entry:
ifail must be set to
,
. If you are unfamiliar with this argument you should refer to
Section 4 in the Introduction to the NAG Library FL Interface for details.
For environments where it might be inappropriate to halt program execution when an error is detected, the value
is recommended. If the output of error messages is undesirable, then the value
is recommended. Otherwise, if you are not familiar with this argument, the recommended value is
.
When the value is used it is essential to test the value of ifail on exit.
On exit:
unless the routine detects an error or a warning has been flagged (see
Section 6).
6
Error Indicators and Warnings
If on entry
or
, explanatory error messages are output on the current error message unit (as defined by
x04aaf).
Errors or warnings detected by the routine:
-
On entry, .
Constraint: .
-
On entry, and .
Constraint: and .
-
On entry, and .
Constraint: .
On entry, and .
Constraint: .
On entry, and .
Constraint: .
-
On entry, , and .
Constraint: .
An unexpected error has been triggered by this routine. Please
contact
NAG.
See
Section 7 in the Introduction to the NAG Library FL Interface for further information.
Your licence key may have expired or may not have been installed correctly.
See
Section 8 in the Introduction to the NAG Library FL Interface for further information.
Dynamic memory allocation failed.
See
Section 9 in the Introduction to the NAG Library FL Interface for further information.
7
Accuracy
g02bkf does not use additional precision arithmetic for the accumulation of scalar products, so there may be a loss of significant figures for large .
8
Parallelism and Performance
g02bkf is threaded by NAG for parallel execution in multithreaded implementations of the NAG Library.
g02bkf makes calls to BLAS and/or LAPACK routines, which may be threaded within the vendor library used by this implementation. Consult the documentation for the vendor library for further information.
Please consult the
X06 Chapter Introduction for information on how to control and interrogate the OpenMP environment used within this routine. Please also consult the
Users' Note for your implementation for any additional implementation-specific information.
The time taken by g02bkf depends on and .
The routine uses a two-pass algorithm.
9.1
Internal Changes
Internal changes have been made to this routine as follows:
- At Mark 27: The algorithm underlying this routine has been altered to improve efficiency for large problem sizes on a multi-threaded system.
For details of all known issues which have been reported for the NAG Library please refer to the
Known Issues.
10
Example
This example reads in a set of data consisting of five observations on each of four variables. The means, standard deviations, sums of squares and cross-products about zero, and correlation-like coefficients for the fourth, first and second variables are then calculated and printed.
10.1
Program Text
10.2
Program Data
10.3
Program Results