diff --git a/src/starcat/build_consensus_reference.py b/src/starcat/build_consensus_reference.py index cf90e4d..36b5fce 100644 --- a/src/starcat/build_consensus_reference.py +++ b/src/starcat/build_consensus_reference.py @@ -297,8 +297,8 @@ def cluster_geps(self): clus_dict_all[gep_num] = [gep] # Relabel GEPs and order by cNMF result source - clus_df = pd.DataFrame.from_dict(clus_dict_all, orient='index', - columns = ['GEP%d' % x for x in range(1, self.num_results+1)]) + clus_df = pd.DataFrame.from_dict(clus_dict_all, orient='index') + result_names = sorted(clus_df.unstack().dropna().apply(lambda x: x.split(':')[0]).unique()) clus_df_clean = pd.DataFrame(index=clus_df.index, columns=result_names) @@ -415,4 +415,4 @@ def get_top_genes(self, clus_df, cgep_spectra, n_top_genes=30): top_genes['cGEP'] = cgep_spectra.loc[cgep, :].sort_values(ascending=False).index[:n_top_genes] top_genes_percgep_dict[cgep] = top_genes - return(top_genes_percgep_dict) \ No newline at end of file + return(top_genes_percgep_dict)