Skip to main content
Documentation

Analyses

Upload your data, tell Diafunc what you want to understand, and get back a report that reveals the relationships in your data — written as formulas you can defend in a meeting, illustrated with charts, and willing to answer follow-up questions.

An analysis is a guided run powered by the Ufinq symbolic regression technology. The resulting report is a living notebook inside a Diafunc project — editable, rerunnable, and shareable.

Starting an analysis

Start an analysis from the "Start analyzing" button on the dashboard or the "Analyze" link in the top menu. A short wizard walks you through creating a project, uploading your data, describing what you want to know, and choosing how deep to go.
The dashboard Start analyzing button that launches the analysis wizard

1. Project and data

Name a new project and upload your raw data as a CSV or Excel file. The data should be in a simple tabular format, with the column names in the first row.
The analysis wizard step for naming a project and uploading data

Supported file formats

Diafunc accepts more than 20 file formats out of the box — tabular (CSV, TSV, Excel), columnar (Parquet, Arrow, ORC, Avro), semi-structured (JSON, JSONL, YAML, XML, HTML, PDF), archives (SQLite, zip, tar), scientific (HDF5, NetCDF), and statistical-software formats (SAS, SPSS, Stata, R RDS). Gzipped / bzipped / xz-compressed variants are unwrapped transparently. The format is detected from a combination of magic bytes, MIME type, and file extension; you can usually drag the file straight into the upload area without configuring anything.

See the full supported file formats reference for the per-format matrix, the inner-table picker behaviour for multi-table sources, and the known limitations of every importer. For dialect quirks (encodings, decimal separators, missing-value conventions, flattening nested JSON / YAML / XML) see preparing your data.

CSV files

All common CSV formats should be supported automatically. To support the data import, please follow the guidelines below.

  1. File extension:
    Use ".csv" as file extension to make it clear that it's a CSV file.

  2. Headers:
    Include clear and consistent headers for each column into the first row to describe the data, but keep them simple.

  3. Encoding:
    Save the CSV file with UTF-8 encoding to ensure compatibility with different systems and to support all characters.

  4. Avoid special characters:
    Do not use special characters to avoid problems and to make the data readable.


CSV Example File

Excel files

Excel files should be as plain as possible. Please follow the guidelines below to ensure the import goes smoothly.

  1. File extension:
    Use ".xlsx" as file extension to make it clear that it's an Excel file.

  2. Headers:
    Include clear and consistent headers for each column into the first row to describe the data, but keep them simple.

  3. No formatting:
    Avoid using cell formatting options like colors, borders, or conditional formatting. Keep the text plain and simple.

  4. Single sheet:
    Use only one sheet per file to keep things simple and organized.

  5. No macros or pivot tables:
    Do not use any macros, pivot tables, charts or any other advanced Excel features. The data should be as raw and uncomplicated as possible.

  6. Data types:
    Ensure that each column contains data of the same type (e.g., all numbers, all text). Use only text and number types. It's perfectly fine to provide numbers using the text data type.


Excel Example File

2. Targets and questions

Tell Diafunc what you want to understand.

Target variables — pick one or more columns you want to explain or predict. Most analyses focus on a single target; two or three is the realistic upper end. The last column of your data is pre-selected by convention.

Questions — optionally add natural-language questions about your data (for example "Which factors drive customer churn?"). The assistant answers each question in a dedicated Questions & Answers chapter of the report, grounded in what the analysis actually found.

3. Depth preset

Pick how much compute to spend. Longer runs search deeper, and the per-hour rate grows super-linearly because deep search finds non-obvious relations that short search misses.

PresetTimeCreditsBest for
Express1 hour500Quick sanity check on a small dataset
Quick2 hours2 000First-pass exploration
Standard (default)4 hours10 000Most analyses of everyday datasets
Thorough8 hours40 000Datasets with many columns or subtle relations
Deep24 hours150 000Maximum-quality discovery on important problems

While it runs

A progress bar shows percentage and elapsed time alongside a short description of what the platform is currently doing.
The analysis progress bar showing percentage and elapsed time

You can open the report notebook while the analysis is still running to peek at the chapters that have already landed. Cancelling an analysis really stops it — no credits are charged for work that hasn't completed.

The report

The resulting analysis is a notebook inside the created project with two top-level chapters. Analysis holds everything Diafunc found and is positioned first so the reader sees the insights immediately; Foundation follows as a reference for the underlying data and the function that produced the report.
Inside Analysis the findings are organised in three layers. Data describes what is in your table, Model holds one discovered model per target together with its diagnostics, and Implications turns the results into conclusions you can act on. Above the layers sit a Headline with the strongest findings at a glance and a Concerns chapter that collects every issue the built-in detectors raised.
ChapterDescription
AnalysisEverything the analysis found, layered from data to conclusions.
HeadlineThe strongest findings at a glance — the first thing a reader sees.
ConcernsEvery issue the built-in detectors raised about the data or the models, collected in one place. Read this before trusting anything else.
Discovered RelationsThe headline formulas Diafunc found for your targets.
Questions & AnswersAn answer to each of the questions you asked in the wizard. Only present if you asked any.
DataWhat is in your table — read this to judge how far to trust the models.
VariableA chapter per analyzed variable with Description, Correlation, and Visualization sub-chapters, Class Balance for non-numeric variables, and an Over Time view when the data has a date column.
Column ProfilesA compact profile of every column in one overview.
Column · namePer-column detail. Free-text columns add token statistics and an embedding view; coordinate pairs add a Geospatial · lat × lng map.
Duplicate RowsDuplicated rows in the dataset and how much of it they make up.
Leakage SuspicionPredictors that track a target suspiciously closely — often leaked or derived columns.
GeneralDataset-wide description: Missing Values, Outlier Ranges, Correlation with Potential Data Leaks, and Clusters. A Segments chapter (Segment Distribution, Segment Profile, Target by Segment) is added when you picked a segment-by column.
ModelOne chapter per target, plus cross-target chapters when you picked several.
TargetThe discovered model: the formula, its metric gauges, a Prediction chapter that applies the model to held-out rows with a scatter chart of actual vs. predicted values, and the diagnostic chapters described below.
Composite ModelSeveral targets only: the per-target models assembled into one multi-output model, with the per-target chapters nested under it.
LeaderboardSeveral targets only: all targets side by side against simple baselines.
Multi-OutputSeveral targets only: cross-output quality and how the outputs' errors relate.
ImplicationsWhat the results mean and what to do next.
Stakeholder SummaryA plain-language summary for readers who won't open the technical chapters.
Recommended Next DataWhich data would improve the models most if you collected it next.
Per-Segment Quality / PerformanceModel quality broken down by segments of the data — automatically chosen feature segments, and your segment-by column if you picked one.
FairnessPer target, how the model behaves across different groups of rows.
Out-of-DistributionHow to recognise future rows that lie outside what the model was trained on.
Causal HonestyWhat the formulas do and do not say about cause and effect.
Deployment ReadinessA checklist of what has — and hasn't — been verified before you rely on the model.
Provenance & AuditWhat produced this report: the data, configuration, and models behind every finding.
FoundationThe data and the function that underlie the analysis.
Raw DataThe dataset exactly as you uploaded it.
Analysis FunctionThe function that produced this report — rerunnable on new data.
Processed DataThe cleaned, typed, and normalised dataset used for modelling.
Discovered Relations and Questions & Answers are filled in by the platform's language model once modelling has finished, grounded in the actual facts of the analysis.

Target kinds

Diafunc detects what kind of prediction problem each target is — from its column type and statistical structure — and picks the matching analyzer automatically. The loss the model is trained against, the headline metrics, and the diagnostic chapters all follow the detected kind.
KindThe target looks like
RegressionA continuous number — the classical case.
CountNon-negative whole-number counts.
OrdinalA small set of ordered levels, such as ratings from 1 to 5.
Binary classificationA yes/no outcome.
Multiclass classificationA category with several possible values.
Time seriesA number paired with a date column, judged in temporal order.
Multi-outputSeveral targets modelled together as one composite model.
Structured outputA tuple-shaped target with meaningful internal structure.
Dense outputA matrix or tensor target.

Several targets, one composite model

When you select more than one target, each target still gets its own chapter and its own formula — and the per-target models are then assembled into a single composite model that predicts all outputs at once, without any additional fitting. The composite model is the headline artifact of a multi-target analysis; the per-target chapters become its per-field breakdown, the Leaderboard chapter compares the targets side by side, and the Multi-Output chapter measures how the outputs' errors relate. The shape of the composite output is chosen automatically from your column names.

Formula explanations

The heart of the report is the per-target Model chapter. Each model is shown as a mathematical formula alongside a plain-English restatement and the top features that drive it.
The model chapter showing a formula with its plain-English explanation and top features


The explanations are produced by our Ufinq symbolic regression technology — the same technology that powers standalone modeling in Diafunc projects.

Ufinq

Each model chapter also shows five gauges summarising its key metrics:

MetricDescription
QualityOverall quality of the solution, derived from a combination of complexity and error.
ComplexityComplexity of the formula — simpler is better, all else being equal.
ErrorError of the formula against the training dataset.
TimeTime spent finding this solution.
BudgetHow much of the compute budget was used to find this solution.

Model diagnostics

Every model chapter carries a set of diagnostic sub-chapters that probe the formula from different angles:
ChapterDescription
Feature ImportanceWhich features drive the model, ranked.
BaselinesThe model against cheap reference predictors (mean, median, linear regression) — a formula is only interesting if it beats them.
GeneralizationTraining vs. held-out quality — does the formula hold on rows it never saw?
Per-Term Partial DependenceHow each term of the formula responds to its inputs.
Per-Row Contribution WaterfallFor a single row, how the terms add up to the prediction.
Term AblationHow much quality each term contributes — what would be lost by dropping it.
What-IfMove the inputs and watch the prediction respond.
SensitivityHow strongly the prediction reacts to each input.
2-Feature InteractionsPairs of features whose combined effect differs from their individual effects.
Worst PredictionsThe held-out rows the model gets most wrong — usually worth inspecting by hand.
Search ProgressHow solution quality improved over the course of the search — did it converge, or did the budget run out first?
Model ConstraintsMathematical-hygiene checks on the held-out predictions: finite outputs, within-domain values, no runaway predictions.
Further diagnostic chapters follow the target kind. Regression targets add Prediction Interval Coverage and Regression Diagnostics; time-series targets add Temporal Diagnostics on top; count targets add a Count Distribution chapter and ordinal targets a Level Distribution chapter. Classification targets add Classification Performance (the confusion matrix), and binary targets additionally get Calibration, Classification Curves, and Decision Boundary chapters.
Classification models output a continuous model score rather than a guaranteed probability. The score estimates how likely the positive outcome is and is clamped to the range 0 to 1; the Calibration chapter — a reliability diagram with Brier score and expected calibration error — tells you whether the scores can honestly be read as probabilities.
The headline held-out metrics come with bootstrap 95% confidence intervals, so you can see how much the numbers could move on a different sample. For regression targets the prediction chart adds prediction intervals derived from the held-out residuals, and the Prediction Interval Coverage chapter checks how many held-out rows actually fall inside them.

Reading the honest-data chapters

The Data layer's General and per-variable chapters tell you how far to trust the model. Skim these first when you open a new analysis — they often reveal problems in the data that make the headline formulas misleading.

Missing Values — shows each variable's row count against the dataset total. If a column is missing more than about 30% of its values, treat any formula that relies on it with caution: the model learned from whatever rows happened to have a value, which may not be representative.

Outlier Ranges — for every numeric variable, shows the 25th, 50th, and 75th percentiles alongside the full range. A variable whose range extends far beyond the 75th percentile usually has a few extreme rows pulling formulas around. Consider whether those rows are data errors, rare-but-real events, or a signal worth modelling separately.

Class Balance (for non-numeric targets) — shows the row count per target class. If one class holds more than ~90% of the rows, a model can look accurate just by always predicting the majority class. The analysis flags this so you can judge quality correctly.

Potential Data Leaks — when a predictor correlates suspiciously strongly with a target (Pearson > 0.95), the report flags it. Very high correlations usually mean the predictor is either a direct transformation of the target, was computed from the target, or is a near-duplicate column. If a leaked variable stays in the analysis, the discovered formula will look great but fail on new data.

Segments (only if you selected a segment-by column) — the Segment Profile shows descriptive statistics grouped by segment, and the per-target Target by Segment chapters show how target values differ between groups. Look for variables whose mean, spread, or missing-value rate changes substantially between segments — those shifts are often more actionable than the aggregate formulas.

Reading the prediction chart

Each model chapter includes a Prediction sub-chapter with a scatter plot of actual values (x-axis) against predicted values (y-axis) for held-out rows the model never saw during training.

Points on the diagonal are accurate predictions. Vertical offsets reveal bias (the model systematically over- or under-predicts), vertical spread reveals noise (how much individual predictions vary), and points far from the diagonal are cases the model handles poorly — often the rows worth inspecting by hand.

After it runs

Share — the Share button turns the project public (with confirmation) and copies a link to the report. Anyone with the link can then read it without signing in.

Ask About It — the Ask About It button opens a chat session scoped to the analysis. The assistant has the findings in context, so follow-up questions land against the specific results of your run.
Report PDF and Excel — a completed run can be downloaded as an evidence-grade PDF covering the formulas, diagnostics, concerns, and provenance, or as a single-sheet Excel workbook containing the same report bundle.

Reusing an analysis

Once a configuration works well, save it as a preset: the same targets, questions, segment key, and depth preset are reused the next time you start an analysis from that preset. This is the fastest way to run the same analysis on next month's data.

What next?