code: def test_nested(self):
      tableset = TableSet(
          self.tables.values(), self.tables.keys(), key_name="test"
      )
  
      nested = tableset.group_by("letter")
  
      self.assertIsInstance(nested, TableSet)
      self.assertEqual(len(nested), 3)
      self.assertSequenceEqual(
          nested._column_names, ("letter", "number")
      )
      self.assertSequenceEqual(
          nested._column_types, (self.text_type, self.number_type)
      )
  
      self.assertIsInstance(nested["table1"], TableSet)
      self.assertEqual(len(nested["table1"]), 2)
      self.assertSequenceEqual(
          nested["table1"]._column_names, ("letter", "number")
      )
      self.assertSequenceEqual(
          nested["table1"]._column_types,
          (self.text_type, self.number_type),
      )
  
      self.assertIsInstance(nested["table1"]["a"], Table)
      self.assertEqual(len(nested["table1"]["a"].columns), 2)
      self.assertEqual(len(nested["table1"]["a"].rows), 2)
  
imports: import json
  import shutil
  from collections import OrderedDict
  from io import StringIO
  from agate import Table, TableSet
  from agate.computations import Formula
  from agate.data_types import Number, Text
  from agate.testcase import AgateTestCase
label_desc: Use image node_id 21 for calling the TestTableSet obj's underlying member method code with example usage: obj.test_nested() without return types