The R_TEST function tests the hypothesis that a binary population (a sequence of 1s and 0s) represents a “random sampling”.

This routine is written in the IDL language. Its source code can be found in the file r_test.pro in the lib subdirectory of the IDL distribution.

## Examples

; Define a binary population:

X = [0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, $

1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1]

; Test the hypothesis that X represents a random sampling against

; the hypothesis that it does not represent a random sampling at

; the 0.05 significance level:

result = R_TEST(X, R = r, N0 = n0, N1 = n1)

PRINT, result

IDL prints:

[2.26487, 0.0117604]

Print the values of the keyword parameters:

PRINT, 'Runs: ', r & PRINT, 'Zeros: ', n0 & PRINT, 'Ones: ', n1

`Runs: 22`

`Zeros: 16`

`Ones: 14`

The computed probability (0.0117604) is less than the 0.05 significance level and therefore we reject the hypothesis that *X* represents a random sampling. The results show that there are too many runs, indicating a non-random cyclical pattern.

## Syntax

*Result* = R_TEST( *X* [, N0=*variable*] [, N1=*variable*] [, R=*variable*] )

## Return Value

The result is a two-element vector containing the nearly-normal test statistic Z and its associated probability. This two-tailed test is based on the “theory of runs” and is often referred to as the “Runs Test for Randomness.”

## Arguments

### X

An *n*-element integer, single-, or double-precision floating-point vector. Elements not equal to 0 or 1 are removed and the length of *X* is correspondingly reduced.

## Keywords

### N0

Set this keyword to a named variable that will contain the number of 0s in *X*.

### N1

Set this keyword to a named variable that will contain the number of 1s in *X*.

### R

Set this keyword to a named variable that will contain the number of runs (clusters of 0s and 1s) in *X*.

## Version History

4.0 |
Introduced |

## See Also

CTI_TEST, FV_TEST, KW_TEST, LNP_TEST, MD_TEST, RS_TEST, S_TEST, TM_TEST, XSQ_TEST