class_docstr: Class responsible for handling input data and extracting metadata into the
  appropriate form
class_docstr_tok: ["Class","responsible","for","handling","input","data","and","extracting","metadata","into","the","appropriate","form"]
code: def row_labels(self):
      exog = self.orig_exog
      if exog is not None:
          row_labels = self._get_row_labels(exog)
      else:
          endog = self.orig_endog
          row_labels = self._get_row_labels(endog)
      return row_labels
  
imports: from __future__ import annotations
  from statsmodels.compat.python import lmap
  from functools import reduce
  import numpy
  from pandas import DataFrame, Series, isnull, MultiIndex
  import statsmodels.tools.data
  from statsmodels.tools.decorators import cache_readonly, cache_writable
  from statsmodels.tools.sm_exceptions import MissingDataError
label_desc: Use image node_id 15 for calling the ModelData obj's underlying member method code with example usage: obj.row_labels() and returns: row_labels