code: def test_iterable_filter(self):
      dsets = self._create_dummy_iterable_dataset_dict()
      example = next(iter(dsets["train"]))
      fn_kwargs = {"n": 3}
      filtered_dsets: IterableDatasetDict = dsets.filter(
          lambda ex, n: n < int(ex["filename"].split("_")[-1]),
          fn_kwargs=fn_kwargs,
      )
      filtered_example = next(iter(filtered_dsets["train"]))
      self.assertListEqual(
          list(example.keys()), list(filtered_example.keys())
      )
      self.assertEqual(
          int(filtered_example["filename"].split("_")[-1]), 4
      )  # id starts from 3
      del dsets, filtered_dsets
  
imports: import os
  import tempfile
  from unittest import TestCase
  import numpy
  import pandas
  import pytest
  from datasets import load_from_disk
  from datasets.arrow_dataset import Dataset
  from datasets.dataset_dict import DatasetDict, IterableDatasetDict
  from datasets.features import ClassLabel, Features, Sequence, Value
  from datasets.iterable_dataset import IterableDataset
  from datasets.splits import NamedSplit
  from .utils import assert_arrow_memory_doesnt_increase, assert_arrow_memory_increases, require_tf, require_torch
label_desc: Use image node_id 20 for calling the DatasetDictTest obj's underlying member method code with example usage: obj.test_iterable_filter() without return types