code: def test_iloc_setitem(setup):
      df1 = pd.DataFrame(
          [[1, 3, 3], [4, 2, 6], [7, 8, 9]],
          index=["a1", "a2", "a3"],
          columns=["x", "y", "z"],
      )
      df2 = md.DataFrame(df1, chunk_size=2)
  
      # plain index
      expected = df1
      expected.iloc[1] = 100
      df2.iloc[1] = 100
      pd.testing.assert_frame_equal(expected, df2.execute().fetch())
  
      # slice index
      expected.iloc[:, 2:4] = 1111
      df2.iloc[:, 2:4] = 1111
      pd.testing.assert_frame_equal(expected, df2.execute().fetch())
  
      # plain fancy index
      expected.iloc[[0], [0, 1, 2]] = 2222
      df2.iloc[[0], [0, 1, 2]] = 2222
      pd.testing.assert_frame_equal(expected, df2.execute().fetch())
  
      # fancy index
      expected.iloc[[1, 2], [0, 1, 2]] = 3333
      df2.iloc[[1, 2], [0, 1, 2]] = 3333
      pd.testing.assert_frame_equal(expected, df2.execute().fetch())
  
      # plain index
      expected.iloc[1, 2] = 4444
      df2.iloc[1, 2] = 4444
      pd.testing.assert_frame_equal(expected, df2.execute().fetch())
  
      # test Series
      data = pd.Series(np.arange(10))
      series = md.Series(data, chunk_size=3)
      series.iloc[:3] = 1
      data.iloc[:3] = 1
      pd.testing.assert_series_equal(series.execute().fetch(), data)
  
      series.iloc[4] = 2
      data.iloc[4] = 2
      pd.testing.assert_series_equal(series.execute().fetch(), data)
  
      series.iloc[[2, 3, 4, 9]] = 3
      data.iloc[[2, 3, 4, 9]] = 3
      pd.testing.assert_series_equal(series.execute().fetch(), data)
  
      series.iloc[5:] = 4
      data.iloc[5:] = 4
      pd.testing.assert_series_equal(series.execute().fetch(), data)
  
      # test Index
      data = pd.Index(np.arange(10))
      index = md.Index(data, chunk_size=3)
      with pytest.raises(TypeError):
          index[5:] = 4
  
imports: import os
  import tempfile
  import mars
  import numpy
  import pandas
  import pytest
  from ....None import dataframe
  from ....None import tensor
  from ....utils import pd_release_version
  from ...datasource.read_csv import DataFrameReadCSV
  from ...datasource.read_sql import DataFrameReadSQL
  from ...datasource.read_parquet import DataFrameReadParquet
label_desc: Use image node_id 3 for calling a global function with example usage: test_iloc_setitem(setup) without return types