code: def test_fit_frame(self):
      X, y = dask_ml.datasets.make_regression(n_features=20, chunks=25)
      X = dd.from_dask_array(X)
      y = dd.from_dask_array(y)
  
      est = dask_ml.ensemble.BlockwiseVotingRegressor(
          sklearn.linear_model.LinearRegression(),
      )
      est.fit(X, y)
      assert len(est.estimators_) == 4
  
      X2, y2 = dask_ml.datasets.make_regression(
          n_features=20, chunks=20
      )
      result = est.predict(X2)
      assert result.dtype == np.dtype("float64")
      assert result.shape == y2.shape
      assert result.numblocks == y2.numblocks
  
      score = est.score(X2, y2)
      assert isinstance(score, float)
  
      # ndarray
      X3, y3 = dask.compute(X2, y2)
      result2 = est.predict(X3)
      assert isinstance(result2, np.ndarray)
      da.utils.assert_eq(result, result2)
  
file_path: dask-ml/tests/ensemble/test_blockwise.py
imports: import dask
  import dask.array
  import dask.dataframe
  import numpy
  import pytest
  import sklearn.linear_model
  import dask_ml.datasets
  import dask_ml.ensemble
label_desc: Use image node_id 2 for calling the TestBlockwiseVotingRegressor obj's underlying member method code with example usage: obj.test_fit_frame() without return types