code: def test_drop(inplace):
      dataset1 = DataSet({"x": [0, 1, 1, 4, 2, 1, 0, 1, 1, 6, 7, 1]})
      dataset2 = DataSet({"x": [0, 0, 0, 0, 0]})
      dataset3 = DataSet({"x": [1, 1, 1, 1, 1, 2, 3, 4]})
      data_bundle = DataBundle(
          datasets={
              "dataset1": dataset1,
              "dataset2": dataset2,
              "dataset3": dataset3,
          }
      )
      res = data_bundle.drop(lambda x: x["x"] == 0, inplace)
      if inplace:
          assert res is data_bundle
      else:
          assert not (res is data_bundle)
          assert (
              data_bundle.get_dataset("dataset1")["x"] == dataset1["x"]
          )
          assert (
              data_bundle.get_dataset("dataset2")["x"] == dataset2["x"]
          )
          assert (
              data_bundle.get_dataset("dataset3")["x"] == dataset3["x"]
          )
  
      dataset1_drop = [1, 1, 4, 2, 1, 1, 1, 6, 7, 1]
      for i, data in enumerate(res.get_dataset("dataset1")["x"]):
          assert data == dataset1_drop[i]
      dataset2_drop = []
      for i, data in enumerate(res.get_dataset("dataset2")["x"]):
          assert data == dataset2_drop[i]
      dataset3_drop = [1, 1, 1, 1, 1, 2, 3, 4]
      for i, data in enumerate(res.get_dataset("dataset3")["x"]):
          assert data == dataset3_drop[i]
  
imports: import pytest
  from fastNLP.core.dataset import DataSet
  from fastNLP.io.data_bundle import DataBundle
label_desc: Use image node_id 2 for calling a global function with example usage: test_drop(inplace) without return types