def get_full_legend(self): legend = {} offset = 1 for i in sorted_dict_keys(self.data): legend.update(self.data[i].get_legend(offset, i)) offset += self.data[i].size return legend
def get_full_vector(self): self.locked = True # prevent further modifications of vector size ret = '' offset = 1 # feature indices must be 1-based for i in sorted_dict_keys(self.data): ret += self.data[i].str_offset(offset) offset += self.data[i].size return ret
def get_legend(self, offset = 0, group_name = ''): legend = {} for i in sorted_dict_keys(self.legend): if self.size > 1: legend[i+offset] = str(group_name) + '[' + str(self.legend[i]) + ']' else: legend[i+offset] = str(group_name) return legend
def __str__(self): ret = 'Feature groups: ' for i in sorted_dict_keys(self.data): ret += "\n - " + str(i) + ":\t" + str(self.data[i]) return ret
def str_offset(self, offset): ret = '' for i in sorted_dict_keys(self.data): if self.data[i] > 0: ret += str(i+offset) + ':' + str(self.data[i]) + '\t' return ret