code: def create_HierarchicalStructure(self):
      self.mLevels = self.mHierarchy["Levels"]
      self.mStructure = {}
      df = self.mHierarchy["Data"]
      lLevelCount = len(self.mLevels)
      for level in range(lLevelCount):
          self.mStructure[level] = {}
      for row in range(df.shape[0]):
          for level in range(lLevelCount):
              col = df[df.columns[level]][row]
              if col not in self.mStructure[level].keys():
                  self.mStructure[level][col] = set()
              if level > 0:
                  col1 = df[df.columns[level - 1]][row]
                  self.mStructure[level][col].add(col1)
      # print(self.mStructure);
      pass
  
imports: import pandas
  import numpy
  from ..None import ForecastEngine
  from .None import Options
  from .None import Perf
  from .None import Utils
  from .None import Plots
  import time
label_desc: Use image node_id 4 for calling the cSignalHierarchy obj's underlying member method code with example usage: obj.create_HierarchicalStructure() without return types