class_docstr: Weisfeiler-Lehman feature extractor class.
  
  Args:
      graph (NetworkX graph): NetworkX graph for which we do WL hashing.
      wl_iterations (int): Number of WL iterations.
      use_node_attribute (Optional[str]): Optional attribute name to be used.
      erase_base_feature (bool): Deleting the base features.
class_docstr_tok: ["Weisfeiler-Lehman","feature","extractor","class",".","Args",":","graph","(","NetworkX","graph",")",":","NetworkX","graph","for","which","we","do","WL","hashing",".","wl_iterations","(","int",")",":","Number","of","WL","iterations",".","use_node_attribute","(","Optional","[","str","]",")",":","Optional","attribute","name","to","be","used",".","erase_base_feature","(","bool",")",":","Deleting","the","base","features","."]
docstr: Initialization method which also executes feature extraction.
docstr_tok: ["Initialization","method","which","also","executes","feature","extraction","."]
code: def __init__(
      self,
      graph: nx.classes.graph.Graph,
      wl_iterations: int,
      use_node_attribute: Optional[str],
      erase_base_features: bool,
  ):
      """
      Initialization method which also executes feature extraction.
      """
      self.wl_iterations = wl_iterations
      self.graph = graph
      self.use_node_attribute = use_node_attribute
      self.erase_base_features = erase_base_features
      self._set_features()
      self._do_recursions()
  
file_path: karateclub/karateclub/utils/treefeatures.py
imports: import hashlib
  import networkx
  from tqdm.auto import tqdm
  from typing import List, Dict, Optional
label_desc: Use image node_id 1 to create a new WeisfeilerLehmanHashing object from inherited base classes: object with example: obj = WeisfeilerLehmanHashing(graph, wl_iterations, use_node_attribute, erase_base_features)