<div class="section-label"><span class="num">06</span> Grid Insights</div> <div class="section-title">Impact on fit and impact on <em>prediction</em>.</div> A [[Grid Prediction]] result includes variable-level **Impact on Fit** and **Impact on Prediction**. Reach for those first. They come with the usual Grid result; you do not need cell-level tables to see them. <div class="pillars"> <div class="pillar"> <div class="pillar-num">↳ IOF</div> <div class="pillar-title">Impact on Fit</div> <div class="pillar-text">How much each attribute changes conviction / reliability for this prediction.</div> </div> <div class="pillar"> <div class="pillar-num">↳ IOP</div> <div class="pillar-title">Impact on Prediction</div> <div class="pillar-text">How much each attribute changes the forecast itself for this prediction.</div> </div> <div class="pillar"> <div class="pillar-num">↳ +</div> <div class="pillar-title">Variable weights</div> <div class="pillar-text">How inclusion mass is distributed across attributes on the composite.</div> </div> </div> Unlike a single t-statistic, these capture **total** importance for the task, including relationships that show up only across combinations, and they are tied to the reliability of *this* prediction, not only an average across many tasks. ## Read these first | Result name | Field | Shape | What it tells you | | --- | --- | --- | --- | | **Impact on Fit** | <span class="mono">impact_on_fit</span> | K | Does including this variable strengthen or weaken fit / conviction? | | **Impact on Prediction** | <span class="mono">impact_on_prediction</span> | K | Does including this variable pull the forecast up or down? | | **Variable weights** | <span class="mono">variable_weights</span> | K | Share of inclusion mass on each variable (sums to 1) | Example: <span class="mono">result.grid_insights.impact_on_fit</span> ## Missing values in X By default (<span class="mono">adjust_impact_for_missing</span> on), incomplete columns are not scored with the plain include-versus-exclude contrast. Combinations that include that column zero-weight rows that are missing in it, which makes the attribute look too weak. Impact for those columns is instead how much the real column beats an uninformative stand-in: observed cells replaced with noise that has the same mean and spread as that column's observed training values, with missing rows left as missing. Complete columns keep the usual include-versus-exclude Impact. The composite forecast, fit, variable weights, and CCTP are **not** rewritten. Set <span class="mono">adjust_impact_for_missing</span> off on [[Settings/Options#GridOptions|GridOptions]] for the pre-adjustment baseline. ## Also available | Result name | Field | Shape | When it appears | | --- | --- | --- | --- | | Component contribution to prediction | <span class="mono">component_contribution_to_prediction</span> | K | Usual Grid result | | Solo composite weights | <span class="mono">xi_solo_composite</span> | N | When you retain <span class="mono">ysolo_distribution</span> | ## Longer technical names Prefer **Impact on Fit** / **Impact on Prediction** in analysis and reporting. The same arrays are also stored under longer names (and short codes in some native docs): | Prefer | Also stored as | Short code | | --- | --- | --- | | <span class="mono">impact_on_fit</span> | <span class="mono">marginal_contribution_to_conviction</span> | MCTC | | <span class="mono">impact_on_prediction</span> | <span class="mono">marginal_contribution_to_prediction</span> | MCTP | > [!tip] > Talk and plot **Impact on Fit** and **Impact on Prediction**. Treat MCTC / MCTP as implementation names, not the story you tell stakeholders. Per-combination tables are separate: [[Results/Grid Cells|Grid Cells]]. --- <div class="btn-row center"> <a class="btn-primary" href="/Functions/Grid%20Prediction">Grid Prediction</a> <a class="btn-ghost" href="/Results/Grid%20Cells">Grid Cells</a> </div>