{
  "slug": "chi-square-test",
  "name": "gizza-ai/chi-square-test",
  "version": "0.1.0",
  "title": "Chi-Square Test — goodness-of-fit & contingency table — gizza.ai",
  "description": "Run Pearson's chi-square test online: goodness-of-fit or contingency-table independence with statistic, df, p-value and Cramér's V. Free, in-browser, no upload.",
  "tags": [
    "chi-square test",
    "chi square calculator",
    "goodness of fit",
    "contingency table",
    "test of independence",
    "p-value",
    "cramers v"
  ],
  "category": "math",
  "urls": {
    "page": "https://gizza.ai/tools/chi-square-test/",
    "markdown": "https://gizza.ai/tools/chi-square-test/index.md",
    "descriptor": "https://gizza.ai/tools/chi-square-test/tool.json",
    "deep_link_example": "https://gizza.ai/tools/chi-square-test/?mode=goodness-of-fit&observed=Goodness-of-fit%3A%2016%2015%2019%2017%2011%2013%20%20%20%C2%B7%20%20%20Contingency%3A%20one%20row%20per%20line&expected=e.g.%209%203%203%201&yates=true"
  },
  "cli": "gizza tool chi-square-test 'mode=goodness-of-fit'",
  "tool": {
    "description": "Run Pearson's chi-square test. Mode 'goodness-of-fit' compares an observed frequency vector against an expected distribution (uniform by default, or explicit expected counts/ratios); mode 'contingency' tests independence in an r×c table of observed counts. Returns the chi-square statistic, degrees of freedom, p-value, expected counts, Cramér's V effect size (contingency), and a low-expected-count warning. Runs locally.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "expected": {
          "description": "Goodness-of-fit only (optional): the expected counts or ratios (same length as observed). Omit for an equal-frequency (uniform) null. Ratios like '9 3 3 1' are rescaled to the observed total. Ignored for contingency tests.",
          "type": "string"
        },
        "mode": {
          "default": "goodness-of-fit",
          "description": "Which test to run: 'goodness-of-fit' compares one observed frequency vector against an expected distribution; 'contingency' tests independence in an r×c table of observed counts.",
          "enum": [
            "goodness-of-fit",
            "contingency"
          ],
          "type": "string"
        },
        "observed": {
          "description": "Observed counts. For goodness-of-fit: one row of numbers separated by spaces/commas/semicolons. For contingency: a table with one row per line, cells separated by spaces/commas/tabs (newlines between rows).",
          "type": "string"
        },
        "yates": {
          "default": false,
          "description": "Contingency only: apply Yates' continuity correction (only affects 2×2 tables). Default false.",
          "type": "boolean"
        }
      },
      "required": [
        "observed"
      ],
      "type": "object"
    }
  }
}