skills/market-research-reports/references/data_analysis_patterns.md
Define the quantity before collecting numbers:
If two estimates do not share this contract, they are not directly comparable.
Treat all three as conditional scenario constructs.
Never present SOM as a guaranteed share or TAM as an objective universal truth.
Use disjoint components:
TAM_top = sum(value_i * in_scope_fraction_i)
Each component needs a unique coverage key, source IDs, period, unit, and denominator. Do not apply a broad percentage to an unrelated aggregate merely because the resulting number looks plausible.
For a recurring-use market:
component_i =
customer_count_i
* addressable_fraction_i
* annual_quantity_per_customer_i
* price_per_unit_i
TAM_bottom = sum(component_i)
Alternative physical-capacity models may use installed base, utilization, replacement cycle, throughput, or transactions. Keep dimensions explicit so the resulting unit can be checked.
SAM_s = TAM * serviceable_fraction_s
SOM_s = SAM_s * obtainable_share_s
The fractions belong to scenario s. At minimum, use distinct downside and
upside cases; a base case is usually useful. For each case, list assumptions,
evidence, constraints, and horizon. Do not assign probabilities without a
validated probabilistic model.
Common failures:
Controls:
Supply-use tables distinguish products from industries and the origin/use of goods and services. Use the OECD Supply and Use Tables and national accounts methodology when the value chain spans intermediate and final demand.
Keep methods separate:
absolute_gap = abs(TAM_top - TAM_bottom)
midpoint = (TAM_top + TAM_bottom) / 2
gap_percent = absolute_gap / midpoint
Investigate gaps in this order:
Do not average the methods until their scopes are demonstrably compatible. If uncertainty remains, report both or retain a range.
YoY_t = value_t / value_(t-1) - 1
CAGR = (end / start)^(1 / periods) - 1
CAGR compresses the path. Always show start/end values and period count. It is undefined when the start is nonpositive and can hide volatility, breaks, and revisions.
value_(t+1,s) = value_(t,s) * (1 + growth_rate_(t,s))
Build rate paths from named drivers rather than copying a paid headline forecast. Separate:
For each scenario, state demand, price, supply, regulation, competition, capacity, and timing assumptions. Use different paths, not merely different labels.
One-way sensitivity varies one input while holding others fixed. Report:
Scenario analysis explores coherent joint states. It is not a confidence interval. Statistical prediction intervals require a specified model, error process, diagnostics, and coverage interpretation.
The 2023 OMB Circular A-4 provides primary guidance on characterizing uncertainty, sensitivity, and transparent assumptions. The UK Green Book 2026 provides additional public-sector appraisal guidance. Adapt principles proportionately; do not imply that a market report is a regulatory appraisal.
Record:
real_value_base_year = nominal_value_t * price_index_base / price_index_t
Identify the index, geography, category, vintage, and whether it is appropriate for the market. A broad CPI may be unsuitable for a specialized B2B input.
Chained-dollar components may not add to published aggregates. BEA's chained-dollar guidance explains why. Use published contributions to growth or current-dollar composition rather than forcing additivity.
Record:
Do not mix converted flows using period-end rates with balances using averages without explanation.
A stock is measured at a point in time; a flow over an interval. Installed base, employees on a date, and capacity are stocks. Revenue, transactions, and shipments during a year are flows. A stock-to-flow conversion requires an explicit turnover, utilization, or replacement-cycle assumption.
share_i = in_scope_measure_i / same_scope_total
HHI = sum((100 * share_i)^2)
CR4 = sum(four_largest_shares)
Before computing:
The 2023 U.S. Merger Guidelines describe HHI as one indicator in case-specific merger analysis. The 2024 EU Market Definition Notice addresses product/geographic scope, non-price parameters, dynamic and digital markets, alternate share metrics, and evidence. A market report's HHI is descriptive and is not a legal conclusion.
For a probability sample, report the design-based or model-based estimator, weights, design effect, and appropriate uncertainty. Do not infer population precision from sample size alone.
For a non-probability sample, disclose recruitment and model assumptions. Use careful labels such as ``among respondents'' unless a validated adjustment supports broader inference.
Use a structured coding frame:
theme_id | definition | inclusion rule | exclusion rule |
supporting excerpts | disconfirming excerpts | roles represented
Report a theme as qualitative evidence. Do not translate mention counts into market prevalence.
Confidence is an analyst assessment, not a substitute for uncertainty:
Always state the reasons. Multiple low-quality sources do not automatically produce high confidence.