code: def test_str_sketch(self):
      str_data = [
          "1",
          "2",
          "3",
          "4",
          "5",
          "6",
          "7",
          "8",
          "9",
          "10",
          None,
      ]
      sa = SArray(data=str_data)
      sketch = sa.summary()
      with self.assertRaises(RuntimeError):
          sketch.min()
      with self.assertRaises(RuntimeError):
          sketch.max()
      with self.assertRaises(RuntimeError):
          sketch.sum()
      with self.assertRaises(RuntimeError):
          sketch.mean()
      with self.assertRaises(RuntimeError):
          sketch.var()
      with self.assertRaises(RuntimeError):
          sketch.std()
  
      self.assertAlmostEqual(sketch.num_unique(), 10, delta=3)
      self.assertEqual(sketch.num_missing(), 1)
      self.assertEqual(sketch.size(), len(str_data))
  
      with self.assertRaises(RuntimeError):
          sketch.quantile(0.5)
      self.assertEqual(sketch.frequency_count("1"), 1)
      self.assertEqual(sketch.frequency_count("2"), 1)
      t = sketch.frequent_items()
      self.assertEqual(len(t), 10)
  
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  from ..data_structures.sarray import SArray
  import pandas
  import numpy
  import unittest
  import random
  import copy
  import os
  import math
  import array
  import time
  import itertools
  import pytest
label_desc: Use image node_id 10 for calling the SArraySketchTest obj's underlying member method code with example usage: obj.test_str_sketch() without return types