diff --git a/cml/ports/source_adapters.py b/cml/ports/source_adapters.py index 08fc976b87fa226d231a62f7c81b13f981e2d85d..c9493377f153d8f1130bf416447a991c3483c2dc 100644 --- a/cml/ports/source_adapters.py +++ b/cml/ports/source_adapters.py @@ -45,6 +45,7 @@ class PandasBlock: self.__data_block = data_block self.relatives = relatives self.n_cluster = None + self.purpose = None def __str__(self): return str(self.__data_block) @@ -82,6 +83,17 @@ class PandasBlock: data_frame["Z"] = labels return PandasBlock(data_frame, self.relatives) + def overlapping_rows(self, block): + overlapping = self.__data_block[self.__data_block.isin(block)].dropna( + axis=0, how="all" + ) + return self.new_block_from_rows_index(overlapping.indexes) + + def fusion(self, block): + return self.new_block_from_rows_index( + self.indexes+block.indexes + ) + @property def min_timestamp(self): return min(self.__data_block["T"])