class_docstr: Distributor Base Class that can handle all iterable items and calculate
  a map_function on each item separately.
  
  This is done on chunks of the data, meaning, that the DistributorBaseClass classes will chunk the data into chunks,
  distribute the data and apply the map_function functions on the items separately.
  
  Dependent on the implementation of the distribute function, this is done in parallel or using a cluster of nodes.
class_docstr_tok: ["Distributor","Base","Class","that","can","handle","all","iterable","items","and","calculate","a","map_function","on","each","item","separately",".","This","is","done","on","chunks","of","the","data",",","meaning",",","that","the","DistributorBaseClass","classes","will","chunk","the","data","into","chunks",",","distribute","the","data","and","apply","the","map_function","functions","on","the","items","separately",".","Dependent","on","the","implementation","of","the","distribute","function",",","this","is","done","in","parallel","or","using","a","cluster","of","nodes","."]
docstr: This abstract base function distributes the work among workers, which can be threads or nodes in a cluster.
  Must be implemented in the derived classes.
  
  :param func: the function to send to each worker.
  :type func: callable
  :param partitioned_chunks: The list of data chunks - each element is again
      a list of chunks - and should be processed by one worker.
  :type partitioned_chunks: iterable
  :param kwargs: parameters for the map function
  :type kwargs: dict of string to parameter
  
  :return: The result of the calculation as a list - each item should be the result of the application of func
      to a single element.
docstr_tok: ["This","abstract","base","function","distributes","the","work","among","workers",",","which","can","be","threads","or","nodes","in","a","cluster",".","Must","be","implemented","in","the","derived","classes",".",":","param","func",":","the","function","to","send","to","each","worker",".",":","type","func",":","callable",":","param","partitioned_chunks",":","The","list","of","data","chunks","-","each","element","is","again","a","list","of","chunks","-","and","should","be","processed","by","one","worker",".",":","type","partitioned_chunks",":","iterable",":","param","kwargs",":","parameters","for","the","map","function",":","type","kwargs",":","dict","of","string","to","parameter",":","return",":","The","result","of","the","calculation","as","a","list","-","each","item","should","be","the","result","of","the","application","of","func","to","a","single","element","."]
code: def distribute(self, func, partitioned_chunks, kwargs):
      """
      This abstract base function distributes the work among workers, which can be threads or nodes in a cluster.
      Must be implemented in the derived classes.
  
      :param func: the function to send to each worker.
      :type func: callable
      :param partitioned_chunks: The list of data chunks - each element is again
          a list of chunks - and should be processed by one worker.
      :type partitioned_chunks: iterable
      :param kwargs: parameters for the map function
      :type kwargs: dict of string to parameter
  
      :return: The result of the calculation as a list - each item should be the result of the application of func
          to a single element.
      """
      raise NotImplementedError
  
imports: import itertools
  import math
  import warnings
  from collections.abc import Generator, Iterable
  from functools import partial
  from itertools import islice, repeat, takewhile
  from multiprocessing import Pool
  from tqdm import tqdm
  from tsfresh.feature_extraction.data import TsData
label_desc: Use image node_id 5 for calling the IterableDistributorBaseClass obj's underlying member method code with example usage: obj.distribute(func, partitioned_chunks, kwargs) without return types