code: def test_simple_table_3(self):
      # Test SimpleTable.extend() as in extend down
      desired = """
  ==============================
             header s1 header d1
  ------------------------------
  stub R1 C1  10.30312  10.73999
  stub R2 C1  90.30312  90.73999
             header s2 header d2
  ------------------------------
  stub R1 C2  50.95038  50.65765
  stub R2 C2  40.95038  40.65765
  ------------------------------
  """
      data1 = [[10.30312, 10.73999], [90.30312, 90.73999]]
      data2 = [[50.95038, 50.65765], [40.95038, 40.65765]]
      stubs1 = ["stub R1 C1", "stub R2 C1"]
      stubs2 = ["stub R1 C2", "stub R2 C2"]
      header1 = ["header s1", "header d1"]
      header2 = ["header s2", "header d2"]
      actual1 = SimpleTable(
          data1, header1, stubs1, txt_fmt=default_txt_fmt
      )
      actual2 = SimpleTable(
          data2, header2, stubs2, txt_fmt=default_txt_fmt
      )
      actual1.extend(actual2)
      actual = "\n%s\n" % actual1.as_text()
      assert_equal(desired, str(actual))
  
file_path: statsmodels/statsmodels/iolib/tests/test_table.py
imports: from numpy.testing import assert_equal
  from statsmodels.iolib.table import SimpleTable, default_txt_fmt
  from statsmodels.iolib.table import default_latex_fmt
  from statsmodels.iolib.table import default_html_fmt
  import pandas
  from statsmodels.regression.linear_model import OLS
label_desc: Use image node_id 3 for calling the TestSimpleTable obj's underlying member method code with example usage: obj.test_simple_table_3() without return types