Downloading & Methodology
After generation and validation, the module lets you download the synthetic dataset and its reports, and provides a built-in methodology document you can cite.
Downloading the synthetic dataset
The generated dataset is downloaded as an Excel workbook (.xlsx), with the data on a sheet named "Synthetic Data". Before writing the file, the module cleans and formats each column according to its variable type, so the downloaded data is presented correctly rather than as raw floating-point numbers.
Type-aware export formatting
| Variable type | Export formatting |
|---|---|
| Binary | Coerced to integer 0 or 1 (Math.round, then formatted with cell format 0) |
| Categorical | Written as-is (the category value) |
| Continuous / time-to-event | Rounded to a type-appropriate number of decimal places, with a matching Excel number format applied to the cell |
| Proportion | Clamped to [0, 1] and rounded to 4 decimal places |
| Count | Bounded and written as a number (rounded to 4 decimals in the internal representation) |
The number of decimal places for continuous and time-to-event variables is determined per variable, and the corresponding Excel cell number-format is applied so the column displays consistently in spreadsheet software.
Download points
You can trigger the download from more than one place in the results area:
- From the generation status panel once generation completes
- From the validation report panel (alongside the option to export the validation report itself)
Output value handling per variable type
The values written to the file are the result of the formatting applied during generation and a final export-time pass:
Binary -- every value is forced to a clean integer:
exported = round(value) == 1 ? 1 : 0
Continuous / time-to-event -- bounded per the bounds mode, then rounded:
value rounded to 4 decimals internally;
exported with a per-variable decimal format
Proportion -- clamped to the valid [0, 1] interval:
exported = clamp(value, 0, 1) rounded to 4 decimals
Count / time-to-event with bounds -- bounded by the bounds mode, with a non-negativity fallback: if no explicit min/max is set, the value is floored at 0 (counts and durations cannot be negative).
Note on count variables: count values are carried with up to 4 decimal places in the output rather than being rounded to whole integers. If your downstream analysis requires strict integers for count variables, round the relevant columns after download.
The reports you can export
In addition to the synthetic dataset itself, the module lets you export the analytical reports that accompany it:
| Export | Contents |
|---|---|
| Synthetic dataset | The generated data (.xlsx, "Synthetic Data" sheet) |
| Validation report | The pass/warning/fail results and quality scores |
| Statistics comparison | A multi-sheet Excel workbook comparing original vs synthetic statistics, split into Continuous Variables, Binary Variables, and Categorical Variables sheets |
The statistics-comparison export is particularly useful for a methods appendix -- it lays out, side by side, the original and synthetic values for every variable so reviewers can see the fidelity directly.
The Methodology viewer
The module includes a built-in Methodology document -- a complete, citable description of how the synthetic data is generated and validated. It is organised into the following sections:
| Section | Content |
|---|---|
| Executive Summary | What the module does and the problem it solves |
| Key Features | The capabilities of the module |
| Data Fidelity: Our Core Principle | Why statistical fidelity is the central design goal |
| User Guide: Best Practices for Data Preparation | How to prepare your input data for the best results |
| Statistical Properties Preserved | The distributions, correlations, and effect sizes the engine maintains |
| Theoretical Foundation | The statistical theory underpinning the method |
| Mathematical Framework | The formal mathematics, including the Cholesky decomposition step |
| Variable Type Detection | The detection logic for classifying variables |
| Effect Size Preservation | How Cohen's d, odds ratios, and hazard ratios are maintained |
| Generation Pipeline | The phased pipeline including Cholesky decomposition |
| Validation Framework | The three-level validation system |
| Quality Score Interpretation | How to read the overall quality score |
| Use Cases | Clinical research, machine learning, and education applications |
| Citation Information | How to cite the module in a publication |
The methodology document mirrors the technical content of this guide, in a form designed to be referenced directly from a paper's methods section.
Using synthetic data in a publication
A typical workflow for reporting synthetic data in a paper:
- Generate the synthetic dataset from your source data or summary statistics
- Download the synthetic dataset for your analyses or for sharing
- Export the validation report to document the fidelity -- quality scores, SMD analysis, and the pass/warning/fail breakdown
- Export the statistics comparison for a side-by-side original-vs-synthetic table in your appendix
- Cite the methodology using the Methodology viewer's citation section
The Love plot and the statistics-comparison table are the two artefacts most commonly included in a manuscript to demonstrate that the synthetic data faithfully reproduced the original's statistical structure.
The AI assistant
Throughout the module -- and in the results and validation views in particular -- an AI assistant is available to help you interpret outputs and answer questions about the analysis. The assistant's role is interpretation and explanation only: it helps you understand the validation report, the effect sizes, and what the quality scores mean. It does not perform the statistical computations itself -- all generation and validation is done by the engine, and the assistant explains those results in accessible terms.