| Reader | Situation | What this course gives |
|---|---|---|
| Master's student in a social-science department | SPSS licence expired or never existed; a thesis with a survey to analyse | A complete free toolkit and the analyses a thesis needs, done correctly |
| NGO monitoring and evaluation officer | A baseline in Excel, a funder who wants 'significance', no programmer on staff | The right test for each question, the effect size to report, and the plot for the report |
| Teacher of research methods | A classroom with mixed laptops and no budget | A tool that installs in minutes and runs the same everywhere, plus a teaching sequence |
| Practitioner moving toward R | Wants to understand the output before learning to write it | Syntax mode shows the R behind every click |
| Field researcher | Needs to check data quality in a district office with no internet | Descriptives, filters and plots offline, in an afternoon |
jmv::ttestIS(data = df, vars = score, group = treatment, effectSize = TRUE). Copy it into R with jmv installed and it runs, producing the same tables. The Rj module goes the other way: an editor inside jamovi where you write R against the loaded data and see the output in the results pane.t.test(score ~ treatment, data = df) is small. That is the argument for jamovi over SPSS in a methods course: the same menus, plus the door to code, at no cost.| SPSS | jamovi | Note |
|---|---|---|
| Variable View: type, label, values, measure | Double-click the column header: name, description, type, levels | Levels are labelled in place; no separate value-labels dialog |
| Analyze → Descriptive Statistics → Frequencies / Descriptives / Explore | Analyses → Exploration → Descriptives, with Split by | One dialog covers all three |
| Compare Means → Independent-Samples T Test | T-Tests → Independent Samples T-Test | Effect size and assumption checks are tick-boxes |
| General Linear Model → Univariate | ANOVA → ANOVA (or ANCOVA) | Post hoc, estimated marginal means and plots in one form |
| Regression → Linear / Binary Logistic | Regression → Linear Regression / Logistic Regression (2 Outcomes) | Model builder with blocks; collinearity and residual plots as options |
| Crosstabs with chi-square | Frequencies → Independent Samples (χ² test of association) | Row, column and expected counts as tick-boxes |
| Scale → Reliability Analysis; Dimension Reduction → Factor | Factor → Reliability Analysis; PCA; Exploratory Factor Analysis; CFA | ω alongside α; parallel analysis built in; CFA in the core |
| Syntax window | Syntax mode; Rj module | R, not SPSS syntax |
| Split File, Select Cases | Split by in each analysis; Data → Filters | Filters are live and stack |
| .sav files | Open directly; also .csv, .xlsx, .dta, .rds | Value labels are preserved on import |
| shg_survey.csv (n = 640 women, 32 villages) | Type | Levels or range |
|---|---|---|
| id | ID | 1–640 |
| village | Nominal | 32 codes |
| treatment | Nominal | SHG member / non-member (village-randomised) |
| age | Continuous | 18–60 |
| educ | Ordinal | None / Primary / Secondary / Higher |
| hh_size | Continuous | 1–14 |
| income_own | Nominal | Yes / No |
| d1–d5 | Ordinal | Decision-making items, 0 / 1 / 2 |
| savings_rs | Continuous | Monthly savings, rupees, right-skewed |
| decide_score | Continuous | Sum of d1–d5, 0–10 |
| lang | Nominal | Hindi / Bangla |
| learning.csv (n = 1,200 children, 40 schools) | Type | Levels or range |
|---|---|---|
| child_id, school_id | ID / Nominal | |
| arm | Nominal | Remedial / Control (school-randomised) |
| grade | Ordinal | 3 / 4 / 5 |
| sex | Nominal | Girl / Boy |
| baseline | Continuous | Reading score, 0–100 |
| endline | Continuous | Reading score, 0–100 |
| attend_pct | Continuous | Attendance, 0–100 |
| reads_para | Nominal | Can read a paragraph at endline: Yes / No |
| Need | Data → Compute (new variable) formula | Note |
|---|---|---|
| Scale score | d1 + d2 + d3 + d4 + d5 or MEAN(d1, d2, d3, d4, d5) | MEAN handles missing items; set a minimum with MEAN(..., ignore_missing = 1) and check the count |
| Log of a skewed variable | LN(savings_rs + 1) | The +1 for zeros; say so |
| Change score | endline - baseline | Section 04 discusses when a change score is the wrong analysis |
| Standardised score | Z(baseline) | Mean 0, SD 1 across the sample |
| Per-capita | savings_rs / hh_size | Division by zero if hh_size can be 0; filter first |
| Condition | IF(attend_pct >= 75, "Regular", "Irregular") | Text result becomes nominal |
| Age band | IF(age < 25, "18-24", IF(age < 40, "25-39", "40+")) | Nested IF; or use Transform for many bands |
6 - $source), collapse categories, convert codes to labels. Both computed and transformed variables update live if the source data change, and both show their formula in the column header, which is the documentation.age >= 18; treatment == "SHG member"; NOT(village == 17); attend_pct > 0 and baseline != NA. Filtered-out rows are greyed, kept in the file, and excluded from every analysis while the filter is active. Filters stack; each can be switched off; the active set is shown in every result's footnote.endline < baseline - 30 shows children whose score fell by more than 30 points: possible ID mismatches. savings_rs > 20000 shows outliers to verify against the paper form. d1 == NA or d2 == NA shows partial refusals of the decision module, which section 05 of SEM 101 says are not random. Each is thirty seconds and each belongs in the data-quality log.IF(endline == NA, 1, 0)) shows whether the children with no endline score differ at baseline from those with one. If they were weaker, attrition biases the endline mean upward and the report must say so. This is the one missing-data analysis every evaluation needs and it takes two clicks.library(survey); des <- svydesign(ids = ~psu, strata = ~stratum, weights = ~wt, data = data); svymean(~stunted, des). Four lines, inside jamovi, on the loaded data, with correct standard errors. It is code, but it is four lines, and Survey Design 101 and the FieldStack notes give the design variables for each survey.| Check | How in jamovi | Done |
|---|---|---|
| Row count matches the interview count | Bottom of the data pane; Descriptives N on the ID | |
| IDs unique | Descriptives → Frequency tables on ID; any count above 1 | |
| Every variable typed and labelled | Walk the headers; Setup | |
| Missing codes declared | Setup → Missing values | |
| Missingness per variable known | Descriptives → N, Missing | |
| Ranges plausible | Descriptives → Min, Max; box plots | |
| Categorical levels clean | Frequency tables; fix in source or Transform | |
| Outliers verified or filtered with a note | Filters; box plots | |
| Scale scores computed with a stated missing rule | Compute with MEAN() | |
| Weights and design understood | If weighted: not in the menus | |
| Raw file preserved; work saved as .omv | Save As |
| SHG member (n = 322) | Non-member (n = 318) | Missing | |
|---|---|---|---|
| Age, mean (SD) | 34.1 (8.2) | 34.6 (8.5) | 0 |
| Education, n (%): None / Primary / Secondary / Higher | 118 (37) / 96 (30) / 84 (26) / 24 (7) | 124 (39) / 92 (29) / 80 (25) / 22 (7) | 0 |
| Household size, median (IQR) | 5 (4–7) | 5 (4–7) | 0 |
| Own income, n (%) yes | 141 (44) | 112 (35) | 3 |
| Monthly savings (Rs), median (IQR) | 300 (100–600) | 150 (0–400) | 11 |
| Decision-making score (0–10), mean (SD) | 5.8 (2.1) | 4.9 (2.2) | 8 |
| Language, n (%) Bangla | 162 (50) | 158 (50) | 0 |
| Question | Plot | Where in jamovi | Note |
|---|---|---|---|
| What does this variable look like? | Histogram with density | Descriptives → Plots | Skew, bimodality, floor and ceiling effects |
| Are there outliers, and do groups differ? | Box plot, or violin with box, split by group | Descriptives → Plots → Box plot; Split by | Tick Data points to see every case |
| Is it roughly normal? | Q-Q plot | Descriptives → Plots | Points on the line: yes; a curve: skew |
| How are categories distributed? | Bar plot | Descriptives → Plots → Bar plot | For nominal and ordinal variables |
| Do two continuous variables relate? | Scatter plot with fit line | Regression → Correlation Matrix → Plot; or the scatr module | Add group colour with Split by |
| Group means with uncertainty | Descriptives plot: mean with CI | T-Tests and ANOVA → Descriptives plots | The plot for a results section |
| Before and after, per person | Paired plot | Flexplot or esci module | Shows individual change, not only means |
| Interaction | Estimated marginal means plot | ANOVA → Estimated Marginal Means → Plots | Lines that cross or diverge |
| d1: who decides on food purchases | SHG member | Non-member |
|---|---|---|
| No say | 12% | 24% |
| Jointly | 38% | 44% |
| Alone | 50% | 32% |
| n | 320 | 316 |
| Education | Own income: Yes | No | Total |
|---|---|---|---|
| None | 62 (26%) | 180 (74%) | 242 |
| Primary | 68 (36%) | 120 (64%) | 188 |
| Secondary | 84 (51%) | 80 (49%) | 164 |
| Higher | 28 (61%) | 18 (39%) | 46 |
| Total | 242 (38%) | 398 (62%) | 640 |
| Question | Outcome | Groups | Test (jamovi menu) | Non-parametric alternative |
|---|---|---|---|---|
| Do two independent groups differ? | Continuous | 2, different people | T-Tests → Independent Samples T-Test (Student or Welch) | Mann-Whitney U (same dialog) |
| Did the same people change? | Continuous | 2, same people | T-Tests → Paired Samples T-Test | Wilcoxon signed-rank (same dialog) |
| Does a mean differ from a known value? | Continuous | 1 | T-Tests → One Sample T-Test | Wilcoxon (same dialog) |
| Do three or more groups differ? | Continuous | 3+, different people | ANOVA → One-Way ANOVA (Welch or Fisher), or ANOVA for factorial designs | ANOVA → Non-parametric → Kruskal-Wallis |
| Do groups differ after adjusting for a covariate? | Continuous | 2+ | ANOVA → ANCOVA | — |
| Repeated measures over time? | Continuous | 3+ occasions, same people | ANOVA → Repeated Measures ANOVA | Non-parametric → Friedman |
| Two factors at once (arm × sex)? | Continuous | Crossed | ANOVA → ANOVA with two factors | — |
| Do groups differ on a proportion? | Binary | 2+ | Section 06: contingency tables, logistic regression | Fisher's exact |
| Statistic | df | p | Mean difference | 95% CI | Cohen's d | |
|---|---|---|---|---|---|---|
| Welch's t | 5.21 | 631 | < .001 | 0.90 | 0.56 to 1.24 | 0.42 |
| Group | N | Mean | SD | SE |
|---|---|---|---|---|
| SHG member | 318 | 5.80 | 2.10 | 0.118 |
| Non-member | 314 | 4.90 | 2.20 | 0.124 |
| Check | Where | Reads as | If it fails |
|---|---|---|---|
| Normality (Shapiro-Wilk, Q-Q) | T-Tests and ANOVA → Assumption Checks | p < .05 rejects normality; the Q-Q plot shows how | With n above ~30 per group and moderate skew, proceed; with severe skew or small n, Mann-Whitney or a transform |
| Equal variances (Levene's) | Same | p < .05: variances differ | Use Welch's t or Welch's ANOVA (both are tick-boxes; use them by default anyway) |
| Independence | Not a check; a design fact | Clustered by village, school, enumerator? | Mixed model (section 08) or cluster-robust SEs in R; at least say so |
| Outliers | Box plot | Points beyond the whiskers | Verify the data; report with and without; do not delete silently |
| Sphericity (repeated measures) | RM ANOVA → Assumption Checks (Mauchly) | p < .05: sphericity violated | Tick Greenhouse-Geisser correction |
| Homogeneity of regression slopes (ANCOVA) | Add the interaction term and test it | Interaction significant: slopes differ | Report the interaction; ANCOVA's adjusted means are then misleading |
| Source | SS | df | MS | F | p | ω² |
|---|---|---|---|---|---|---|
| educ | 186.4 | 3 | 62.1 | 13.8 | < .001 | 0.057 |
| Residuals | 2,862.0 | 636 | 4.5 |
| Post hoc (Tukey) | Mean difference | SE | ptukey | d |
|---|---|---|---|---|
| Primary − None | 0.52 | 0.21 | 0.06 | 0.24 |
| Secondary − None | 1.14 | 0.22 | < .001 | 0.53 |
| Higher − None | 1.61 | 0.35 | < .001 | 0.75 |
| Secondary − Primary | 0.62 | 0.23 | 0.03 | 0.29 |
| Source | F | df | p | ω² |
|---|---|---|---|---|
| arm | 48.2 | 1, 1196 | < .001 | 0.038 |
| sex | 3.1 | 1, 1196 | 0.08 | 0.002 |
| arm × sex | 0.6 | 1, 1196 | 0.44 | 0.000 |
| Test | Replaces | Tests | Effect size |
|---|---|---|---|
| Mann-Whitney U | Independent t | Whether one group tends to have higher values (stochastic dominance), not the medians unless shapes match | Rank-biserial correlation (tick-box) |
| Wilcoxon signed-rank | Paired t | Whether differences tend to be positive | Rank-biserial |
| Kruskal-Wallis | One-way ANOVA | Whether any group tends higher | ε² (tick-box); Dwass-Steel-Critchlow-Fligner pairwise comparisons |
| Friedman | Repeated-measures ANOVA | Whether occasions differ in rank | Durbin-Conover pairwise |
| Spearman's ρ | Pearson's r | Monotonic association | ρ itself |
| Outcome | Remedial, mean (SD), n | Control, mean (SD), n | Difference (95% CI) | Test | Effect size |
|---|---|---|---|---|---|
| Endline reading (0–100) | 51.0 (16.2), 600 | 44.3 (16.8), 600 | 6.7 (4.8 to 8.6) | Welch t(1,196) = 7.0, p < .001 | d = 0.41 |
| Change from baseline | 9.8 (12.4), 600 | 3.1 (11.9), 600 | 6.7 (5.3 to 8.1) | Welch t(1,196) = 9.5, p < .001 | d = 0.55 |
| Attendance (%) | 82.1 (11.0), 600 | 80.9 (11.6), 600 | 1.2 (−0.1 to 2.5) | Welch t(1,196) = 1.8, p = .07 | d = 0.11 |
| Reads a paragraph, n (%) | 372 (62) | 294 (49) | 13 points (7 to 18) | χ²(1) = 20.4, p < .001 | RR 1.27 |
| Baseline | Endline | Attendance | |
|---|---|---|---|
| Baseline | — | ||
| Endline | 0.71 [0.68, 0.74] | — | |
| Attendance | 0.18 [0.12, 0.23] | 0.24 [0.19, 0.29] | — |
| Predictor | Estimate | SE | 95% CI | t | p | Std. β |
|---|---|---|---|---|---|---|
| Intercept | 14.6 | 1.4 | 11.8 to 17.4 | 10.3 | < .001 | |
| baseline | 0.72 | 0.02 | 0.68 to 0.76 | 33.5 | < .001 | 0.71 |
| arm: Remedial − Control | 6.6 | 0.68 | 5.3 to 7.9 | 9.7 | < .001 | 0.20 |
| grade: 4 − 3 | 1.9 | 0.83 | 0.3 to 3.5 | 2.3 | 0.02 | |
| grade: 5 − 3 | 3.4 | 0.84 | 1.8 to 5.1 | 4.1 | < .001 |
| Check | Where | Good | Bad, and the fix |
|---|---|---|---|
| Residuals vs fitted | Assumption Checks → Residual plots | A flat band of points | A curve: non-linearity, add a squared term or transform; a funnel: heteroskedasticity, use robust SEs (Rj: sandwich) or transform the outcome |
| Q-Q plot of residuals | Same | Points on the line | Heavy tails or skew: check outliers; for large n the estimates are fine, the intervals slightly off |
| Collinearity (VIF, tolerance) | Assumption Checks → Collinearity statistics | VIF below 5, ideally below 3 | Two predictors measure the same thing; drop one or combine |
| Influential cases (Cook's distance) | Assumption Checks → Cook's distance | All small | A few cases drive the fit; verify them, report with and without |
| Autocorrelation (Durbin-Watson) | Assumption Checks | Near 2 | Only for ordered data; for clustered data the fix is a mixed model |
| Linearity of each covariate | Scatter plots; add a squared term | No improvement | Curvilinear: keep the square, interpret with a plot |
age^2) and add both as covariates; the coefficient on the square is negative and significant; the estimated marginal means plot (or the Flexplot module) draws the curve. Alternatively compute the log of savings as the outcome, in which case coefficients read as proportional changes: 0.05 means about 5% more savings per year of age.| Model 1: baseline only | Model 2: + arm | Model 3: + grade, sex, attendance | |
|---|---|---|---|
| Baseline score | 0.74 (0.71, 0.77) | 0.73 (0.70, 0.76) | 0.72 (0.68, 0.76) |
| Remedial arm | 6.7 (5.4, 8.0) | 6.6 (5.3, 7.9) | |
| Grade 4 (vs 3) | 1.9 (0.3, 3.5) | ||
| Grade 5 (vs 3) | 3.4 (1.8, 5.1) | ||
| Boy (vs girl) | −0.8 (−2.1, 0.5) | ||
| Attendance (per 10 points) | 0.9 (0.3, 1.5) | ||
| R² | 0.50 | 0.54 | 0.55 |
| ΔR² (p) | 0.04 (< .001) | 0.01 (< .001) | |
| n | 1,200 | 1,200 | 1,196 |
| Arm | Reads: Yes | No | Total | Row % |
|---|---|---|---|---|
| Remedial | 372 | 228 | 600 | 62.0% |
| Control | 294 | 306 | 600 | 49.0% |
| Total | 666 | 534 | 1,200 | 55.5% |
| Statistic | Value | df | p |
|---|---|---|---|
| χ² | 20.6 | 1 | < .001 |
| Relative risk (Remedial vs Control) | 1.27 | 95% CI 1.15 to 1.39 | |
| Odds ratio | 1.70 | 95% CI 1.35 to 2.14 | |
| Cramer's V | 0.13 |
| Predictor | Estimate (log odds) | SE | Odds ratio | 95% CI | p |
|---|---|---|---|---|---|
| Intercept | −2.84 | 0.23 | < .001 | ||
| baseline (per point) | 0.064 | 0.005 | 1.07 | 1.06 to 1.08 | < .001 |
| arm: Remedial | 0.61 | 0.13 | 1.84 | 1.42 to 2.38 | < .001 |
| grade: 4 vs 3 | 0.28 | 0.16 | 1.32 | 0.97 to 1.81 | 0.08 |
| grade: 5 vs 3 | 0.55 | 0.16 | 1.73 | 1.26 to 2.38 | < .001 |
| sex: Boy | −0.09 | 0.13 | 0.91 | 0.71 to 1.17 | 0.47 |
| Remedial | Control | Test | |
|---|---|---|---|
| Enrolled at baseline | 640 | 640 | |
| Endline score available | 600 (93.8%) | 600 (93.8%) | χ²(1) = 0.0, p = 1.00 |
| Baseline score of those lost, mean (SD) | 34.1 (15.0), n = 40 | 36.2 (15.8), n = 40 | Welch t(78) = 0.6, p = .54 |
| Baseline score of those retained | 41.7 (16.0) | 41.5 (16.3) | |
| Lost vs retained, pooled | 35.2 vs 41.6 | Welch t(94) = 3.5, p < .001 |
| Result | Report | Not |
|---|---|---|
| A proportion | % with n and 95% CI | % alone |
| Two proportions | Both %, the difference in points with CI, the risk ratio with CI, the test | The odds ratio alone when the outcome is common |
| A table | Counts and row or column % (say which), the χ² with df and p, Cramer's V | Percentages with no counts |
| A logistic model | Odds ratios with CIs, predicted probabilities at meaningful values, n, AUC | 'Significant predictors' with stars |
| Small cells | Fisher's exact; the cells collapsed and why | A χ² with expected counts of 2 |
| Attrition | By arm, with baseline comparison of lost and retained | 'Some children could not be followed up' |
| Ordinal outcome | The ordinal model's odds ratio, or the item distribution by group | A mean of the codes as if continuous, without saying so |
| Item | Mean | SD | Item-rest r | α if dropped | ω if dropped |
|---|---|---|---|---|---|
| d1 food purchases | 1.32 | 0.71 | 0.58 | 0.74 | 0.75 |
| d2 large purchases | 1.04 | 0.78 | 0.64 | 0.72 | 0.73 |
| d3 visiting family | 1.21 | 0.74 | 0.60 | 0.73 | 0.74 |
| d4 own health care | 1.18 | 0.76 | 0.55 | 0.75 | 0.76 |
| d5 children's schooling | 1.55 | 0.62 | 0.31 | 0.81 | 0.82 |
| Scale | α = 0.79 | ω = 0.80 |
| Fit measure | Value | Reads as |
|---|---|---|
| χ² (df), p | 118.6 (51), < .001 | Exact fit rejected, as expected at n = 640 |
| CFI | 0.955 | Above 0.95 |
| TLI | 0.942 | Just under 0.95 |
| RMSEA [90% CI] | 0.046 [0.035, 0.057] | Good |
| SRMR | 0.045 | Good |
| Scale | Items | Range | ω | α | Mean (SD) | Missing |
|---|---|---|---|---|---|---|
| Decision-making | 5 | 0–10 | 0.80 | 0.79 | 5.4 (2.2) | 8 |
| Mobility | 3 | 0–6 | 0.81 | 0.80 | 3.1 (1.6) | 5 |
| Control over assets | 4 | 0–8 | 0.76 | 0.75 | 3.8 (1.9) | 11 |
| Module | Adds | Use it for |
|---|---|---|
| GAMLj (Gallucci) | General linear model, generalized linear model (logistic, Poisson, negative binomial, ordinal, multinomial), mixed models, generalized mixed models; simple effects, plots, contrasts | Clustered data (children in schools), counts, and any regression with interactions plotted properly |
| jAMM (Gallucci) | Mediation and moderation with bootstrapped indirect effects, conditional effects, path diagrams | Mechanism questions |
| SEMLj (Gallucci and Jentschke) | Full SEM via lavaan: syntax or diagram interface, ordinal estimators, multigroup, invariance, fit | Everything in SEM 101 |
| MAJOR (Hamilton) | Meta-analysis via metafor: effect sizes from various inputs, random effects, forest and funnel plots, moderators | Everything in Systematic Reviews 101, section 07 |
| esci (Cumming and Calin-Jageman) | Estimation statistics: effect sizes with CIs and the plots that show them | Reports that lead with the difference, not the p |
| Flexplot (Fife) | Graphics-first modelling: scatter, paired, interaction plots with fitted models | Seeing the model before fitting it |
| jpower | Power analysis for t-tests and proportions | Section 10 |
| snowIRT, psychoPDA | Item response theory | Section 07 |
| Rj | An R editor inside jamovi | The one thing the menus lack |
| TOSTER | Equivalence tests | Showing two things are the same, not merely not different |
| walrus | Robust statistics (trimmed means, bootstrapped tests) | Outlier-heavy data |
| Distraction | Distributions: plots and probabilities | Teaching |
| Effect | Estimate | SE | 95% CI | p | Compare: OLS CI |
|---|---|---|---|---|---|
| baseline | 0.72 | 0.02 | 0.68 to 0.76 | < .001 | 0.68 to 0.76 |
| arm: Remedial | 6.5 | 1.42 | 3.6 to 9.4 | < .001 | 5.3 to 7.9 |
| Random intercept SD (school) | 4.1 | ||||
| Residual SD | 10.6 | ||||
| ICC | 0.13 |
| Effect | Estimate | 95% CI (bootstrap) |
|---|---|---|
| a: treatment → savings | 142 Rs | 98 to 186 |
| b: savings → decide (per 100 Rs) | 0.21 | 0.13 to 0.29 |
| Indirect (a × b) | 0.30 | 0.18 to 0.44 |
| Direct (c′) | 0.60 | 0.25 to 0.95 |
| Total | 0.90 | 0.56 to 1.24 |
| Need | Rj code (data is the loaded dataset) |
|---|---|
| Weighted estimate with survey design | library(survey); d <- svydesign(ids=~psu, strata=~stratum, weights=~wt, data=data); svymean(~decide_score, d) |
| Cluster-robust standard errors | library(sandwich); library(lmtest); m <- lm(endline ~ baseline + arm, data); coeftest(m, vcov = vcovCL(m, cluster = data$school_id)) |
| Multiple imputation | library(mice); imp <- mice(data, m = 20); pool(with(imp, lm(endline ~ baseline + arm))) |
| Reshape long to wide | library(tidyr); pivot_wider(data, names_from = wave, values_from = score) |
| A custom plot | library(ggplot2); ggplot(data, aes(baseline, endline, colour = arm)) + geom_point(alpha = .3) + geom_smooth(method = "lm") |
| BF10 | Error % | Median δ | 95% credible interval | |
|---|---|---|---|---|
| SHG member vs non-member | 4.8 × 104 | < 0.001 | 0.41 | 0.25 to 0.57 |
| BF10 | Evidence for H1 (an effect) | BF01 = 1/BF10 | Evidence for H0 (no effect) |
|---|---|---|---|
| 1 | None; the data do not distinguish | 1 | None |
| 1 to 3 | Anecdotal | 1 to 3 | Anecdotal |
| 3 to 10 | Moderate | 3 to 10 | Moderate |
| 10 to 30 | Strong | 10 to 30 | Strong |
| 30 to 100 | Very strong | 30 to 100 | Very strong |
| Above 100 | Extreme | Above 100 | Extreme |
| Element | Report |
|---|---|
| Hypotheses | What H0 and H1 are, and whether one- or two-sided |
| Prior | The distribution and its parameters for every tested effect, and why (default, informed from a source, or chosen for the expected effect size) |
| Software | JASP version and the R package underneath (BayesFactor) |
| Bayes factor | BF10 or BF01, stated; the numerical error percentage if sampling was used |
| Posterior | Median or mean of the effect size, the 95% credible interval, and the plot |
| Robustness | The Bayes factor across prior widths (the plot or its range) |
| Sequential | If data were analysed as they arrived, the sequential plot |
| Interpretation | Evidence described with the conventional labels, without treating them as thresholds; the null supported where the BF supports it |
| Classical companion | The frequentist result alongside, where readers expect it |
| Analysis | Effect size (tick-box) | Reads as | Convention, and its limits |
|---|---|---|---|
| Independent t | Cohen's d (also Hedges' g, Glass's Δ) | Difference in SD units | 0.2 / 0.5 / 0.8 small / medium / large (Cohen 1988); in education Kraft (2020) argues 0.05 / 0.20 as the meaningful boundaries |
| Paired t | Cohen's d (paired) | Mean change over the SD of changes | Not comparable to the independent d; say which |
| ANOVA | ω² (preferred), η², partial η² | Share of variance explained by the factor | 0.01 / 0.06 / 0.14; partial η² is inflated in multi-factor designs |
| Correlation | r | Strength of linear association | 0.1 / 0.3 / 0.5 |
| Regression | Unstandardised B in outcome units; standardised β; R², ΔR² | B is the one a reader can use | β for comparison within a model only |
| Contingency table | Percentage-point difference; risk ratio; odds ratio; Cramer's V | Points for policy; RR for comparison; V for strength | V: 0.1 / 0.3 / 0.5; OR overstates RR when outcomes are common |
| Non-parametric | Rank-biserial r; ε² | Probability-based difference | As for r |
| Logistic | Odds ratio; predicted probability difference | Points, again | Give the probabilities |
p.adjust.| Misreading | Why it happens | The correction |
|---|---|---|
| p < .001 means a big effect | The dialog shows p first and largest | p depends on n; the effect size is separate and must be reported |
| p = .07 means no effect | 'Not significant' reads as 'nothing' | The CI shows what effects remain plausible; a Bayes factor may say the data were uninformative |
| Significant in the treatment arm, not in control, so the programme worked | Two paired tests instead of one comparison | Test the difference between arms; section 04 |
| Controlled for it, so it is not confounding | Regression dialogs make adjustment feel like proof | Adjustment handles measured confounders in the form entered; unmeasured ones remain; causal claims need a design |
| The model fits (R² = 0.55), so the coefficients are causal | Fit and causation look alike in a table | R² is prediction; the arm coefficient is causal only because arm was randomised |
| Output | How | Note |
|---|---|---|
| A table to Word | Right-click the table → Copy; paste into Word | Pastes as a real table; the number format (three-dots menu) is applied |
| A table to LaTeX | Right-click → Export → LaTeX (JASP); copy as HTML and convert (jamovi) | JASP's is cleaner |
| A plot | Right-click the plot → Export → PDF, SVG, EPS or PNG | SVG or PDF for print; PNG at 300 dpi for Word |
| All results | Menu → Export → HTML or PDF | The whole results pane as a document; useful for an appendix or a supervisor |
| The data with computed variables | Menu → Export → CSV | For use in R or Stata; filters are applied if 'filtered rows' is chosen |
| The syntax | Syntax mode on; select and copy | Into the methods appendix |
| APA formatting | JASP tables are APA by default; jamovi's are close | Round to two decimals in the report; p to three, or '< .001' |
| Every result | Done |
|---|---|
| Estimate in the outcome's units, with a 95% CI | |
| The test statistic, df and exact p (or '< .001') | |
| An effect size, named | |
| n for that analysis (after missing and filters) | |
| Assumption checks mentioned, and the choice they led to | |
| Direction and magnitude in words a non-statistician can use |
| The report | Done |
|---|---|
| Primary outcome declared; secondary outcomes counted or adjusted | |
| Clustering handled or acknowledged | |
| Attrition table by arm | |
| Scales' reliability and structure reported | |
| Exploratory analyses labelled | |
| Causal verbs only where the design supports them | |
| Software and module versions; the .omv or .jasp file deposited | |
| Numbers copied, never retyped; text matches tables |
| Tool | Cost | Best at | Weak at |
|---|---|---|---|
| jamovi | Free, open | Data cleaning in place, the standard analyses with effect sizes, modules for mixed models, SEM, meta-analysis, IRT; syntax mode | Survey weights; long-to-wide reshaping; dates |
| JASP | Free, open | Bayesian analyses, APA tables, the Learn Bayes module, SEM and meta-analysis modules, a plot builder and an AI assistant in recent versions | Data editing (improving); survey weights |
| gretl | Free, open | Econometrics: time series, panels, instrumental variables, with menus | Psychometrics; plots are dated |
| PSPP | Free, open | An SPSS clone for those who must match SPSS output | Few effect sizes; little development |
| BlueSky Statistics; R Commander | Free (BlueSky has a paid tier) | R with menus; BlueSky is broad and generates R code | Smaller communities |
| Excel and Google Sheets | Free or licensed | Descriptives, pivot tables, quick plots, the Analysis ToolPak's t-tests and regression | Everything else; no assumption checks; errors travel silently |
| SPSS | Licence, expensive | The institutional default; broad; good documentation | Cost; no omega, CFA or parallel analysis without add-ons; syntax is its own language |
| Stata | Licence | Survey weights, panels, econometrics; menus plus a command line worth learning | Cost; weaker psychometrics and plots than R |
| R with RStudio | Free, open | Everything, reproducibly | Not point-and-click; the learning curve is the cost |
| Sign | Why the menu fails | Next tool |
|---|---|---|
| The survey has weights, strata and clusters | No design support | R survey (via Rj or RStudio); Stata svy |
| The same cleaning must be done to twenty files | Menus do it once | R or Python scripts; Data Analysis 101 |
| Panel data with fixed effects and clustered errors | GAMLj can approximate; the standard tools are elsewhere | Stata xtreg; R fixest; gretl |
| Difference-in-differences with staggered adoption | Not in any module | R did, fixest; Impact Evaluation 101 |
| Time series | Not in jamovi or JASP | gretl; R forecast; Time Series 101 |
| Multiple imputation | Rj only | R mice |
| Custom or publication-quality figures | Fixed plot options | R ggplot2; Data Visualization 101 |
| A reviewer asks for the code | A menu sequence is not code | Syntax mode exported; or redo in R |
| Text, images, networks | No dialogs | R or Python |
| Week | Topic | jamovi | Assessment |
|---|---|---|---|
| 1 | Data: types, levels, cleaning, the checklist | Setup, Compute, Filters | A cleaned file with a data log |
| 2 | Describing: distributions and plots | Descriptives, all plots | Table 1 and three plots from a supplied survey |
| 3 | Comparing two groups; effect sizes | Independent and paired t-tests | A comparison with CI, d and a sentence |
| 4 | Several groups; assumptions | One-way ANOVA, post hoc, non-parametric | An ANOVA with post hoc and a plot |
| 5 | Factorial designs and interactions | ANOVA with two factors; marginal means | An interaction plot and its reading |
| 6 | Correlation and simple regression | Correlation matrix, linear regression | A regression table with diagnostics |
| 7 | Multiple regression and ANCOVA | Model builder, factors, marginal means | The three-column regression table |
| 8 | Categorical outcomes | Contingency tables, logistic regression | A crosstab and a logistic model with probabilities |
| 9 | Scales | Reliability, EFA, CFA | A scale validation paragraph |
| 10 | Clustered data and mediation | GAMLj mixed model; jAMM | A mixed model with ICC |
| 11 | Bayesian inference | JASP t-test and ANOVA | A Bayes factor with prior stated |
| 12 | Reporting, reproducibility, and the edge | Annotations, syntax, export, Rj | A full results section from a supplied dataset, with the .omv file |
| Step | Dialog | Output | Section |
|---|---|---|---|
| Import and set up | Open; Setup for 15 variables; missing codes 999 | Typed, labelled data | 02 |
| Check | Descriptives with min/max/missing; Filters for implausible savings; frequency tables | Data log; 6 cases filtered with reasons | 02 |
| Scores | Compute: decide_score = MEAN(d1..d5); log_savings | Two new variables with formulas | 02 |
| Scale | Reliability; CFA split by language | ω = 0.80; structure holds; d3 differs by language | 07 |
| Table 1 | Descriptives split by treatment; frequency tables | Balance table | 03 |
| Primary outcome | GAMLj mixed model: decide_score ~ treatment + age + educ + (1 | village) | Effect 0.85, 95% CI 0.42 to 1.28; ICC 0.09 | 08 |
| Secondary | Mixed model on log_savings; logistic on income_own | Two more rows, same columns | 05, 06, 08 |
| Mechanism | jAMM mediation through savings | Indirect 0.30, CI 0.18 to 0.44, labelled consistent-with | 08 |
| Heterogeneity | GAMLj interaction treatment × income_own, pre-specified | Interaction p = .21; no evidence | 08 |
| Bayesian companion | JASP Bayesian t-test | BF10 extreme; posterior d 0.41 | 09 |
| Report | Copy tables; export plots; annotate; syntax to appendix; deposit .omv | Results section and file | 10 |
| Error | Section | Fix in one line |
|---|---|---|
| Analysing a weighted survey unweighted | 02 | R survey via Rj; say what is unweighted |
| Wrong variable types (a code averaged, a number as text) | 02 | Set every type on import |
| Deleting rows instead of filtering | 02 | Filters, with notes |
| Paired t-test on one arm as the programme effect | 04 | Compare arms: change-score t or ANCOVA |
| p-values on a balance table | 03 | Descriptives only |
| Ignoring clustering | 04, 08 | GAMLj mixed model |
| Odds ratio reported as relative risk | 06 | Give probabilities and the RR |
| Item deletion by 'alpha if dropped' | 07 | Look at the item; keep it unless there is a reason |
| Twelve outcomes, no correction, no primary | 10 | Declare a primary; Holm; count the tests |
| Non-significant read as no effect | 10 | The CI; a Bayes factor |
| Retyped numbers | 10 | Copy tables |
| No file shared | 10 | Deposit the .omv |
| Resource | What it covers | Notes |
|---|---|---|
| Navarro and Foxcroft, Learning Statistics with jamovi (2019) | The whole of sections 02 to 07, as a textbook with the dialogs | Free at learnstatswithjamovi.com; the companion to this course |
| jamovi user guide and the module documentation (jamovi.org) | Every dialog; GAMLj, jAMM and SEMLj have their own sites with worked examples | Free |
| Van Doorn et al., Psychon Bull Rev 2021, 28:813 | Conducting and reporting a Bayesian analysis in JASP | Section 09; ten pages |
| Cumming and Calin-Jageman, Introduction to the New Statistics (2nd ed., Routledge, 2024) | Estimation, effect sizes and CIs, with the esci module | Sections 04 and 10 |
| Lakens, Improving Your Statistical Inferences (free online course and book) | p-values, power, effect sizes, equivalence tests, pre-registration | The clearest treatment of section 10's material |
| Kraft, Educational Researcher 2020, 49:241 | Interpreting effect sizes in education | Section 10 |
| Kruschke, Doing Bayesian Data Analysis (2nd ed., Academic Press, 2015) | Bayesian estimation from first principles | For those who want more than section 09 |
| Datalab.cc's jamovi video series (Barton Poulson) | Screen-by-screen walkthroughs | Free; good for a first week |
| ImpactMojo: Data Analysis 101, Bivariate Analysis 101, Multivariate Analysis 101, Econometrics 101, Impact Evaluation 101, SEM 101 | The statistics behind each dialog, and the designs that make coefficients causal | impactmojo.in/101-courses/ |