code: def test_dtypes(self):
      X = da.random.uniform(size=(100, 2), chunks=(50, 2))
      X2 = X.astype("f4")
      pairs = [(X, X), (X2, X2), (X, X2), (X2, X)]
  
      for xx, yy in pairs:
          a = DKKMeans()
          b = SKKMeans(n_init="auto")
          a.fit(xx)
          b.fit(xx)
          assert a.cluster_centers_.dtype == b.cluster_centers_.dtype
          assert a.labels_.dtype == b.labels_.dtype
          assert a.transform(xx).dtype == b.transform(xx).dtype
          assert a.transform(yy).dtype == b.transform(yy).dtype
  
imports: import warnings
  import dask.array
  import dask.dataframe
  import numpy
  import pandas
  import pytest
  import sklearn.datasets
  import sklearn.utils.extmath
  from dask.array.utils import assert_eq
  from sklearn.cluster import KMeans
  from sklearn.utils.estimator_checks import check_estimator
  import dask_ml.cluster
  from dask_ml.cluster import KMeans, k_means
  from dask_ml.cluster._compat import _kmeans_plusplus
  from dask_ml.utils import assert_estimator_equal, row_norms
label_desc: Use image node_id 8 for calling the TestKMeans obj's underlying member method code with example usage: obj.test_dtypes() without return types