Contingency table inference
Calculate a chi-square independence test directly from aggregate counts, with complete expected cells, contributions and residuals.
- 1Add input
- 2Adjust settings
- 3Get your result
Tool input and files are processed in this browser without being uploaded.
Before you start
Use a two-axis frequency table to inspect margins, asymptotic evidence and the cells behind it. Select the active input, alpha and original 2×2 correction explicitly.
How to use this tool
- Select the active input and provide the complete labeled count table.
- Enter alpha explicitly and choose correction using the original shape.
- Check the total, active degrees of freedom, small expected counts and undefined states.
- Save all eight complete files and interpret the asymptotic result in the study design.
Supported inputs and limits
Select paste or file as the active input. Use strict UTF-8 comma-separated CSV with nonempty labels on both axes: 1–64 data rows, 1–64 data columns, at most 4,096 cells and 4 MiB. Duplicate labels retain their original indices.
Counts are nonnegative integers with total N ≤ 10¹². Alpha is an explicit finite number between 0 and 1. Yates applies only to the original 2×2 shape; removing zero margins does not make a larger original table eligible.
All original rows, columns and zero-margin cells remain. Positive-margin degrees of freedom must be ≤ 100. Zero total or insufficient positive margins produce explicit undefined states. Positive expected counts below 5 warn about the asymptotic approximation.
The upper tail uses direct positive terms and log arithmetic. Representable small p values retain their value; genuine binary64 underflow retains finite log p. This is an asymptotic independence test and does not reconstruct individuals or perform exact, Fisher or simulation tests.
One operation shares 10 million work units, 512 MiB memory and a complete 30-second deadline including source read, worker startup, computation, complete validation, cleanup and first publication. Files plus full text allow 32 MiB, compact typed data including native metadata 8 MiB, their aggregate 40 MiB, and binary plus transport metadata 64 MiB. A crossed budget fails the whole operation.
Download five complete matrices, the full report, settings and the exact original CSV. Screen previews are bounded; full copy and downloads are complete. The original, its filename and settings are processed locally in the current browser.
Worked example
Example input
Genotype,Impaired,Control E2E2,0,2 E2E3,7,30 E2E4,1,7 E3E3,34,133 E3E4,41,65 E4E4,8,5
Example options
source=text; alpha=0.05; correction=false
Example output
N=333; df=5; chi-square≈21.5774809035; p≈0.000629818883; smallExpectedCells=4
When something does not work
Cancellation, timeout or input/setting changes clear old success artifacts. The same original and parameters remain available for a fresh worker. Repair invalid CSV or reduce an over-budget input, then run again.
Frequently asked questions
Are zero margins removed?
All original cells, labels and indices stay. Only the test degrees of freedom exclude zero margins.
Does a zero p value mean impossibility?
An underflow flag means binary64 cannot represent the positive upper tail; finite log p remains available.