A step-by-step technical guide to statistical analysis and modelling for the Internal Assessment.
A2:A101 (column A, rows 2–101). Adjust the range to match your own dataset. All formulas start with = and are typed directly into a cell.
For any single-variable dataset in A2:A101, enter these formulas into separate summary cells. Build a labelled table in your IA to present them — don't just paste the Sheets output.
=AVERAGE(A2:A101)=MEDIAN(A2:A101)=MODE(A2:A101)=STDEV.S(A2:A101)=STDEV.P(A2:A101)=QUARTILE(A2:A101, 1)=QUARTILE(A2:A101, 3)=Cell_Q3 - Cell_Q1 (reference your Q₃ and Q₁ cells)Use STDEV.S for sampled IA data (almost always the right choice — your data is a sample drawn from a larger population). Use STDEV.P only if your dataset represents the entire population, e.g. every student in one specific class where that class is the whole population of interest.
=MODE returns only the first mode if multiple exist. For multimodal data use =MODE.MULT(A2:A101) as an array formula (Ctrl+Shift+Enter). If your data is continuous, mode is often not meaningful — focus on mean, median and standard deviation instead.
Histograms display the frequency distribution of continuous data. Setting a uniform bucket (class interval) width is important for IB presentation standards.
Select your continuous dataset including the header row (e.g. click the column A header to select the whole column, or drag from A1 to A101).
Navigate to Insert → Chart. In the Chart Editor panel that appears on the right, open the Chart type dropdown and select Histogram chart.
Click the Customize tab inside the Chart Editor, expand the Histogram section, and change Bucket size from "Auto" to your preferred uniform class interval — for example 5.0 or 10.0. Equal-width intervals are required for a valid frequency histogram in an IB context.
Still in Customize → Chart & axis titles: set the chart title, horizontal axis label (with units), and vertical axis label ("Frequency"). An unlabelled histogram cannot earn full marks on Criterion B.
To analyse the relationship between two variables, place your independent variable (X) in the left column and your dependent variable (Y) in the adjacent right column. Sheets reads the left column as x by default.
Select from A1 to B101 (including headers). Both columns must be the same height — any missing values will distort the chart.
Click Insert → Chart. In the Chart Editor, change the Chart type to Scatter chart. Sheets may auto-suggest a Line chart — always switch to Scatter for mathematical data so individual data points are shown correctly.
Switch to the Customize tab → expand Series → scroll down and tick Trendline. Change the Label dropdown to "Use equation". This outputs the exact regression formula (e.g. y = 2.34x + 5.17) directly onto the chart.
In the same Series panel, tick "Show R²". The coefficient of determination appears on the chart automatically. Copy this value into your IA write-up and interpret it — do not just reproduce the chart without discussion.
Under Chart & axis titles, add a descriptive chart title and both axis labels with units. Export via the three-dot menu → Download → PNG. Paste into your document with a figure caption below.
To mathematically justify the linear strength without relying solely on a visual chart, calculate r directly in a calculations cell:
=CORREL(A2:A101, B2:B101)=RSQ(B2:B101, A2:A101)If your data displays non-linear properties, adjust the trendline model type in the Chart Editor. The table below summarises all available models and when to use each.
| Model | Equation form | Trendline setting | Typical IA application |
|---|---|---|---|
| Linear | y = mx + c | Type → Linear | Any direct proportional or steady-rate relationship |
| Exponential | y = abx | Type → Exponential | Population growth, viral spread, compound interest, radioactive decay |
| Quadratic | y = ax² + bx + c | Type → Polynomial, Degree → 2 | Projectile trajectories, optimisation problems, parabolic arches |
| Cubic | y = ax³ + bx² + cx + d | Type → Polynomial, Degree → 3 | S-shaped growth, roller coaster profiles, cubic spline modelling |
| Power | y = axb | Type → Power series | Kepler's laws, braking distance, allometric biology |
| Logarithmic | y = a·ln(x) + b | Type → Logarithmic | Diminishing returns, Richter/decibel scales, learning curves |
The trendline equation shown on a chart is rounded. For your IA write-up, extract the full-precision coefficients using formulas.
=SLOPE(B2:B101, A2:A101)=INTERCEPT(B2:B101, A2:A101)=LINEST(B2:B101, A2:A101, TRUE, TRUE)=LN(B2) — fill down to C101=SLOPE(C2:C101, A2:A101)=EXP(INTERCEPT(C2:C101, A2:A101))=A2^2 — fill down to C101=LINEST(B2:B101, A2:C101, TRUE, TRUE)Once you have your model coefficients in named cells, create a predicted values column alongside your raw data. This lets you plot the fitted curve and calculate residuals.
Plot columns A and C together (alongside A and B) on the same scatter chart to show how well your model fits the data. A residuals plot (A vs D) should show no clear pattern — if it does, your model is inappropriate.
Before running any test, always write H₀ and H₁ explicitly in your IA. State your significance level (α = 0.05 is standard). After obtaining the p-value, write a formal conclusion.
Use when testing whether two categorical variables are independent (e.g. age group vs. preferred platform).
Enter row categories in column A, column categories in row 1. Fill in observed counts. Add row and column totals using =SUM().
For each cell: = (row total × column total) / grand total. Use absolute cell references for totals so you can fill the formula across all cells, e.g. =($G2*B$7)/$G$7.
=CHITEST(observed_range, expected_range) — returns the p-value directly. If p < 0.05, reject H₀ and conclude the variables are not independent.
=T.TEST(A2:A30, B2:B30, 2, 2)=(AVERAGE(A2:A101)-μ)/(STDEV.S(A2:A101)/SQRT(COUNT(A2:A101)))=T.DIST.2T(ABS(t_cell), COUNT(A2:A101)-1)=NORM.DIST(x, mean, stdev, TRUE)=NORM.DIST(b,mean,stdev,TRUE) - NORM.DIST(a,mean,stdev,TRUE)=NORM.INV(probability, mean, stdev)=(A2-AVERAGE(A$2:A$101))/STDEV.S(A$2:A$101) — fill down=POISSON.DIST(k, λ, FALSE)=POISSON.DIST(k, λ, TRUE)=BINOM.DIST(k, n, p, FALSE)=BINOM.DIST(k, n, p, TRUE)Mathematical communication (Criterion B, 4 marks) is directly affected by how you present Sheets output in your IA document.
Don't just paste a number. Write the formula alongside the result: "Using =CORREL(A2:A101, B2:B101) yields r = 0.87." This proves you used mathematics, not guesswork.
Decide on a precision and stick to it. Use 4 d.p. for r and R². Use Format → Number → Custom to enforce this in Sheets before screenshotting tables.
Every table needs a title above it (Table 1: Summary statistics) and column headers with units. Use Format → Alternating colors for clean Sheets tables before exporting.
White background, no 3D effects, meaningful axis labels with units, a descriptive title. Avoid pie charts — they convey less precision than a bar chart and look unprofessional in a Maths IA.
Every graph in your IA needs a caption below it: Figure 2: Scatter plot of stopping distance vs. speed with quadratic regression curve (R² = 0.97). Reference the figure number in your prose.
Go to File → Share → Anyone with the link → Viewer and include the URL in your bibliography. This lets the examiner verify your raw data and formulas directly.
Use the other tools in the guide to pick a topic, understand the criteria, and avoid common mistakes.