Skip to content

Commit

Permalink
Limited get_contrast to minimum 4 samples
Browse files Browse the repository at this point in the history
  • Loading branch information
PauBadiaM committed Mar 14, 2022
1 parent c7fa80a commit 2f283dd
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions decoupler/utils_anndata.py
Original file line number Diff line number Diff line change
Expand Up @@ -250,11 +250,16 @@ def get_contrast(adata, group_col, condition_col, condition, reference, method='

# Sub-set by group
sub_adata = adata[adata.obs[group_col] == grp].copy()


# Subset condition_col
sub_adata.obs = sub_adata.obs[[condition_col]]
sub_adata = sub_adata[np.isin(sub_adata.obs[condition_col], [condition, reference])]
if sub_adata.shape[0] < 4:
continue

# Transform string columns to categories (removes anndata warnings)
for col in sub_adata.obs.columns:
if sub_adata.obs[col].dtype == 'object' or sub_adata.obs[col].dtype == 'category':
sub_adata.obs[col] = pd.Categorical(sub_adata.obs[col])
if sub_adata.obs[condition_col].dtype == 'object' or sub_adata.obs[condition_col].dtype == 'category':
sub_adata.obs[condition_col] = pd.Categorical(sub_adata.obs[condition_col])

# Run DEA if enough samples
_, counts = np.unique(sub_adata.obs[condition_col], return_counts=True)
Expand Down

0 comments on commit 2f283dd

Please sign in to comment.