selectColumns method

Datacat selectColumns(
  1. List<String> selectedColumns
)

Returns a new Datacat with only the selected columns.

Implementation

Datacat selectColumns(List<String> selectedColumns) {
  List<int> indices = selectedColumns.map((col) {
    int index = columns.indexOf(col);
    if (index == -1) throw ArgumentError('Column "$col" not found.');
    return index;
  }).toList();
  List<List<dynamic>> newRows =
      rows.map((row) => indices.map((i) => row[i]).toList()).toList();
  return Datacat(columns: selectedColumns, rows: newRows);
}