class_docstr: A configuration is a tuple of a model configuration and a dataset
  configuration.
docstr: Returns a data frame representing the provided configurations.
  
  The model is translated into columns of the data frame automatically.
  The dataset is converted to a single column by being represented by its
  name.
code: def to_dataframe(
      cls,
      configs: list[Config[ModelConfig]],
  ) -> pd.DataFrame:
      """
      Returns a data frame representing the provided configurations.
  
      The model is translated into columns of the data frame automatically.
      The dataset is converted to a single column by being represented by its
      name.
      """
      rows: list[dict[str, str | float | int | bool]] = [
          {
              "model": c.model.name(),
              "dataset": c.dataset.name(),
              **{
                  (
                      f"model_{k}"
                      if k in TrainConfig.training_hyperparameters()
                      else f"model_{c.model.name()}_{k}"
                  ): v
                  for k, v in asdict(c.model).items()
              },
          }
          for c in configs
      ]
      return pd.DataFrame(rows)
  
file_path: gluonts/src/gluonts/nursery/tsbench/src/tsbench/config/config.py
imports: from __future__ import annotations
  from dataclasses import asdict, dataclass
  from typing import Dict, FrozenSet, Generic, List, TypeVar, Union
  import pandas
  from .dataset import DatasetConfig
  from .model import ModelConfig, TrainConfig
label_desc: Use image node_id 1 for calling the Config obj's underlying member method code with example usage: obj.to_dataframe(cls, configs) and returns: pd