code: def test_estimate_data(self):
      p = lm._RegressionPlotter(
          self.df.d, self.df.y, x_estimator=np.mean
      )
  
      x, y, ci = p.estimate_data
  
      npt.assert_array_equal(x, np.sort(np.unique(self.df.d)))
      npt.assert_array_almost_equal(y, self.df.groupby("d").y.mean())
      npt.assert_array_less(np.array(ci)[:, 0], y)
      npt.assert_array_less(y, np.array(ci)[:, 1])
  
imports: import warnings
  import numpy
  import matplotlib
  import matplotlib.pyplot
  import pandas
  import pytest
  import numpy.testing
  import pandas.testing
  from seaborn import regression
  from seaborn.palettes import color_palette
label_desc: Use image node_id 19 for calling the TestRegressionPlotter obj's underlying member method code with example usage: obj.test_estimate_data() without return types