ray.tune.ResultGrid.get_dataframe#
- ResultGrid.get_dataframe(filter_metric: str | None = None, filter_mode: str | None = None) pandas.DataFrame [source]#
Return dataframe of all trials with their configs and reported results.
Per default, this returns the last reported results for each trial.
If
filter_metric
andfilter_mode
are set, the results from each trial are filtered for this metric and mode. For example, iffilter_metric="some_metric"
andfilter_mode="max"
, for each trial, every received result is checked, and the one wheresome_metric
is maximal is returned.Example
from ray import train from ray.train import RunConfig from ray.tune import Tuner def training_loop_per_worker(config): train.report({"accuracy": 0.8}) result_grid = Tuner( trainable=training_loop_per_worker, run_config=RunConfig(name="my_tune_run") ).fit() # Get last reported results per trial df = result_grid.get_dataframe() # Get best ever reported accuracy per trial df = result_grid.get_dataframe( filter_metric="accuracy", filter_mode="max" )
- Parameters:
filter_metric – Metric to filter best result for.
filter_mode – If
filter_metric
is given, one of["min", "max"]
to specify if we should find the minimum or maximum result.
- Returns:
Pandas DataFrame with each trial as a row and their results as columns.