code: def test_experiment_with_unibucket_3(self):
      dim = 50
      vector_count = 100
      vectors = numpy.random.randn(dim, vector_count)
      unibucket = UniBucket("testHash")
      nearest = NearestFilter(5 + 1)
      engine = Engine(
          dim, lshashes=[unibucket], vector_filters=[nearest]
      )
      exp = RecallPrecisionExperiment(10, vectors)
      result = exp.perform_experiment([engine])
  
      # In this case recall is only 0.5
      # because the engine returns 5 nearest, but
      # the experiment looks for 10 nearest.
      self.assertEqual(result[0][0], 0.5)
      self.assertEqual(result[0][1], 1.0)
  
file_path: NearPy/tests/experiments_tests.py
imports: from __future__ import print_function
  import numpy
  import unittest
  from nearpy.experiments import RecallPrecisionExperiment
  from nearpy.hashes import UniBucket, RandomDiscretizedProjections, RandomBinaryProjections, PCABinaryProjections
  from nearpy.filters import NearestFilter, UniqueFilter
  from nearpy.distances import CosineDistance, EuclideanDistance
  from nearpy import Engine
label_desc: Use image node_id 4 for calling the TestRecallExperiment obj's underlying member method code with example usage: obj.test_experiment_with_unibucket_3() without return types