code: def from_str(self, in_str):
          
          parts = in_str.split(";")
          for part in parts:
              var_name, value = part.split(":")
              if var_name == "Obs_Threshold":
                  self.obs_threshold = float(value)
              elif var_name == "Thresholds":
                  self.thresholds = np.array(value.split(), dtype=float)
                  self.contingency_tables = pd.DataFrame(columns=self.contingency_tables.columns,
                                                         data=np.zeros((self.thresholds.size,
                                                                       self.contingency_tables.columns.size)))
              elif var_name in self.contingency_tables.columns:
                  self.contingency_tables[var_name] = np.array(value.split(), dtype=int)
docs: Read the DistributedROC string and parse the contingency table values from it.
  
          Args:
              in_str (str): The string output from the __str__ method