code: def measure_numerical_dataframe(
      rows_count: int, columns_count: int = 200
  ) -> tp.Tuple[float, float]:
      batches: tp.Tuple[
          np.ndarray, np.ndarray, np.ndarray, np.ndarray
      ] = get_raw_data(rows_count, columns_count)
  
      column_to_data: tp.Dict[str, tp.Any] = {}
      column_prefixes: tp.List[str] = [
          "float64_",
          "float32_",
          "int8_",
          "int32_",
      ]
      for batch_id in range(len(batches)):
          column_to_data.update(
              {
                  column_prefixes[batch_id]
                  + str(num): batches[batch_id][num]
                  for num in range(batches[batch_id].shape[0])
              }
          )
  
      frame = pd.DataFrame(column_to_data)
  
      return measure_pool_building_with_numerical_data(frame)
  
file_path: catboost/catboost/benchmarks/pool_creation_benchmark/benchmarks.py
imports: import numpy
  import typing
  import pandas
  from catboost import Pool
  from timeit import default_timer
label_desc: Use image node_id 4 for calling a global function with example usage: measure_numerical_dataframe(rows_count, columns_count) and returns: measure_pool_building_with_numerical_data