What is Category Bias?

QuantWealth’s archaeological count-based exclusivity wealth measure is affected by how researchers categorize their count data. The same cemetery may be recorded differently by different researchers. One researcher might use broader categories for some types (e.g. “ceramics”), but then have more detailed categories for flints or beads, and another researcher might separate “ceramics” (or any other group) into finer categories like “c_bowl”, “c_jug”, “c_pot”. This subjective categorization can often produce different Gini coefficients. The Category Bias simulation explores how sensitive your results are to these categorization choices.

Why Does This Matter?

Consider these two ways of recording the same 10 graves:

🔶 Lumped (3 categories)

Broad groupings: “ceramics”, “stone_tools”, “ornaments”

🔷 Split (7 categories)

Fine types: “c_bowl”, “c_jug”, “s_axe”, “s_scraper”, “glass_beads”, “shell_pendant”, “copper_ring”

Worked Example

Lumped Version (3 categories)

Lumped data with 3 broad categories
Grave_ID ceramics stone_tools ornaments TOT Prestige+1
G1 2 1 0 2 4.83
G2 0 1 0 1 2.83
G3 1 0 1 2 5.67
G4 3 2 5 3 7.50
G5 0 1 0 1 2.83
G6 1 0 0 1 3.00
G7 0 0 0 0 1.00
G8 2 1 3 3 7.50
G9 1 0 0 1 3.00
G10 0 1 0 1 2.83

Prestige values:

  • ceramics: 2 (mean TOT of graves with ceramics)
  • stone_tools: 1.83
  • ornaments: 2.67

Gini (Prestige+1) = 0.302

Split Version (7 categories) — Same Data

Split data with 7 fine categories
Grave_ID c_bowl c_jug s_axe s_scraper glass_beads shell_pendant copper_ring TOT Prestige+1
G1 1 1 1 0 0 0 0 3 11.60
G2 0 0 0 1 0 0 0 1 5.33
G3 0 1 0 0 1 0 0 2 9.27
G4 2 1 1 1 3 1 1 7 33.60
G5 0 0 1 0 0 0 0 1 4.00
G6 1 0 0 0 0 0 0 1 5.00
G7 0 0 0 0 0 0 0 0 1.00
G8 1 1 0 1 2 1 0 5 23.60
G9 0 1 0 0 0 0 0 1 4.60
G10 0 0 1 0 0 0 0 1 4.00

Prestige values:

  • c_bowl: 4 | c_jug: 3.6 | s_axe: 3 | s_scraper: 4.33
  • glass_beads: 4.67 | shell_pendant: 6 | copper_ring: 7

Gini (Prestige+1) = 0.526

⚠️ Key Observation: The same underlying data produces very different Gini coefficients:

  • Lumped (3 categories): Gini = 0.302
  • Split (7 categories): Gini = 0.526
  • Difference: +74.4%

With finer categories, rich graves (G4, G8) now have many more distinct types, amplifying measured inequality.

Visual Comparison: Lorenz Curves

The split version (blue) shows a more bowed curve, indicating higher inequality. The lumped version (orange) is closer to the equality line.

How the Simulation Works

The simulation runs 100 iterations. Each iteration:

  1. Randomly splits some columns into finer sub-categories
  2. Randomly lumps some columns with shared names together
  3. Recalculates the Gini coefficient for both versions

This produces 100 split-Ginis and 100 lump-Ginis, showing the range of possible outcomes.

Controlling Splits

The number of times each column can split is limited by rules applied in priority order:

Priority 1: Prefix matching (highest priority)

Columns sharing a prefix before underscore (e.g., “c_bowl”, “c_jug”, “c_pot”) form a group. The split limit is reduced by the group size.

Example: 5 columns with “c_” prefix → base limit (5) − 5 = 0 additional splits

Tip: Add consistent prefixes to your column names (e.g., “c_” for ceramics, “s_” for stone, “cu_” for copper) to control splitting behavior.

Priority 2: Special high-count patterns

Columns containing: bead, ornament, pearl, perle, pendant, pebble, sherd, shell, arrowhead

These items often have high counts but shouldn’t split excessively. Their split limit uses asinh(median) — a function that grows slowly for large numbers.

Example: Column with median count of 20 → asinh(20) ≈ 3.7 max splits

Priority 3: 5-character substring matching

If no prefix or special pattern matches, the algorithm looks for shared substrings of 5+ characters.

Example: “limestone_beads” and “limestone_ornament” share “limestone” → grouped together

Count-based limit: Regardless of the above rules, a column cannot split into more sub-categories than its median count. If graves typically have 2 stone axes, splitting into 5 types makes no sense.

Controlling Lumps

Columns are candidates for lumping if they share:

  • A prefix before underscore (e.g., “bone_awl” + “bone_tool” → “bone_items”)
  • A substring of 3+ characters (e.g., “glass_beads” + “copper_beads”)

In each simulation, 2 or more columns from each group may be randomly combined by summing their counts.

Reading the Plot

Element Meaning
Black line Your original Gini coefficient
Gray dashed lines Interquartile range (IQR) — the middle 50% of simulated values
Orange dots Gini values from lumping simulations (fewer categories)
Blue dots Gini values from splitting simulations (more categories)

Plot Header Information

  • Left side (orange): Matched strings used for lumping, and number of lumpable groups found
  • Right side (blue): Top 5 columns with highest split potential, showing maximum splits for each

Interpreting Results

Pattern Interpretation
Black line within gray dashes ✅ Your result is robust to categorization choices
Wide spread of dots ⚠️ Gini is sensitive to how categories are defined
Blue dots much higher than orange Finer categories would increase measured inequality
Tight clustering around black line ✅ Your categorization is well-balanced
Black line outside the IQR ⚠️ Your categorization may be unusually coarse or fine

IQR stored with submissions: When you add results to the map, the interquartile range from the Category Bias simulation is stored. This provides a measure of uncertainty due to categorization choices, visible in the map popup as “Bias IQR”.

Best Practices

  1. Use consistent prefixes: Name columns like c_bowl, c_jug, s_axe, cu_ring to give you control over grouping behavior.

  2. Run the simulation: Always check category bias before drawing conclusions about inequality levels.

  3. Report the IQR: When publishing results, mention the bias simulation IQR to indicate robustness.

  4. Compare like with like: When comparing Gini coefficients across sites, ensure similar categorization granularity.


← Back to QuantWealth

Documentation for QuantWealth Archaeological Inequality Tool Last updated: Januar 2026