Examples

The following examples illustrate how to conduct XL-mHG tests and visualize the results using the Python API. For details on each method, including all optional parameters, see the API reference.

Conducting a test using the simple test function

This example demonstrates the use of the simple test function, xlmhg_test(), for conducting an XL-mHG test.

Script:

import numpy as np
import xlmhg

v = np.uint8([1,0,1,1,0,1] + [0]*12 + [1,0])
X = 3
L = 10
stat, cutoff, pval = xlmhg.xlmhg_test(v, X=X, L=L)

print('Test statistic: %.3f' % stat)
print('Cutoff: %d' % cutoff)
print('P-value: %.3f' % pval)

Output:

Test statistic: 0.014
Cutoff: 6
P-value: 0.024

Conducting a test using the advanced test function

This example demonstrates the use of the advanced test function, get_xlmhg_test_result(), for conducting an XL-mHG test.

Script:

import numpy as np
import xlmhg

v = np.uint8([1,0,1,1,0,1] + [0]*12 + [1,0])
X = 3
L = 10

N = v.size
indices = np.uint16(np.nonzero(v)[0])

result = xlmhg.get_xlmhg_test_result(N, indices, X=X, L=L)

print('Result:', str(result))
print('Test statistic: %.3f' % result.stat)
print('Cutoff: %d' % result.cutoff)
print('P-value: %.3f' % result.pval)

Output:

Result: <mHGResult object (N=20, K=5, X=3, L=10, pval=2.4e-02)>
Test statistic: 0.014
Cutoff: 6
P-value: 0.024

Visualizing a test result

This example demonstrates how to visualize an XL-mHG test result using the get_result_figure() function and plotly.

Script:

import numpy as np
import xlmhg
from plotly.offline import plot

v = np.uint8([1,0,1,1,0,1] + [0]*12 + [1,0])
X = 3
L = 10

N = v.size
indices = np.uint16(np.nonzero(v)[0])

result = xlmhg.get_xlmhg_test_result(N, indices, X=X, L=L)

fig = xlmhg.get_result_figure(result)

plot(fig, filename='test_figure.html')

This produces an html file (test_figure.html) that contains an interactive figure. Open the file in a browser (if it doesn’t open automatically) and click on the camera symbol (the left-most symbol on top of the figure) to download it as a PNG image. The image looks as follows:

_images/test_figure.png