code: def test_df_values(self):
      est1 = dpp.RobustScaler()
      est2 = dpp.RobustScaler()
  
      result_ar = est1.fit_transform(X)
      result_df = est2.fit_transform(df)
      if hasattr(result_df, "values"):
          result_df = result_df.values
      assert_eq_ar(result_ar, result_df)
  
      for attr in ["scale_", "center_"]:
          assert_eq_ar(getattr(est1, attr), getattr(est2, attr))
  
      assert_eq_ar(est1.transform(X), est2.transform(X))
      assert_eq_ar(est1.transform(df).values, est2.transform(X))
      assert_eq_ar(est1.transform(X), est2.transform(df).values)
  
      # different data types
      df["0"] = df["0"].astype("float32")
      result_ar = est1.fit_transform(X)
      result_df = est2.fit_transform(df)
      if hasattr(result_df, "values"):
          result_df = result_df.values
      assert_eq_ar(result_ar, result_df)
  
imports: from copy import copy
  import dask
  import dask.array
  import dask.dataframe
  import numpy
  import pandas
  import pandas.testing
  import pytest
  import sklearn.preprocessing
  from dask import compute
  from dask.array.utils import assert_eq
  from dask.dataframe.utils import assert_eq
  from pandas.api.types import is_categorical_dtype, is_object_dtype
  from sklearn.exceptions import NotFittedError
  import dask_ml.preprocessing
  from dask_ml.datasets import make_classification
  from dask_ml.utils import assert_estimator_equal
label_desc: Use image node_id 4 for calling the TestRobustScaler obj's underlying member method code with example usage: obj.test_df_values() without return types