Radiant documentation
Forecasting

Base rates

Grounding an estimate in historical rows, choosing which count, and deciding what the card reports.

A Base Rate node holds historical observations and summarises them into one figure. It is the answer to "how often has this actually happened before?"

What it holds

Each row is a label and a value — the label says what the observation was, the value says what it measured. The node also keeps the query the rows came from and when they were fetched, so you can tell how old the evidence is.

Selecting rows

Not every row belongs. You choose which count, and only selected rows feed the figure.

Open View data on the node to see the full list, select and deselect, and read both the median and the mean of your current selection.

A node with rows but nothing selected reports Base-rate node has no selected historical rows and produces no value. Select at least one row.

Rate or typical value

What the node reports depends on its output type.

As a probability, the node states a rate: what fraction of the selected rows were events. Every selected row must be 0 or 1, and Radiant says so if any is not:

Base-rate node is a probability, so every selected row must be 0 or 1.

That check exists because a rate over non-event data is meaningless.

As a numeric value, the node states a typical value from the rows, and you choose which statistic.

Median or mean

The Headline value control chooses what the card states: Median (P50) or Mean. Median is the default.

The choice matters most when the rows are skewed. A handful of very large observations pull the mean up and leave the median where the bulk of the data sits; which one is honest depends on what you are about to do with it.

Display only

This setting changes what the card states. It does not change sampling, formulas, runs, or exports. View data always shows both values.

A base rate over 0/1 events offers no selector, because the median of a set of zeroes and ones tells you almost nothing.

Pulling historical data

The assistant can retrieve rows for you. Launch Pull historical data from the node, and the task searches, returns a table of candidate rows, and waits for you to review them.

You choose which rows to keep before anything is written. If the node already has rows, the review says Replace data rather than pretending to merge, and discarding reads Keep current data — so dismissing a review never destroys what you had.

Re-running the search with a different phrasing starts a fresh task and leaves the node alone until you accept something.

Until it has data

A base rate with no rows reports:

Base-rate node has no historical data yet. Pull historical data to use it.

That is a warning, not an error — the rest of the map still computes and previews still run. Only the nodes reading this one lose their value.