Skip to content

Commit

Permalink
Merge pull request open2c#6 from mirnylab/master
Browse files Browse the repository at this point in the history
merge latest from mirnylab-master
  • Loading branch information
sergpolly committed Jan 25, 2020
2 parents 11bd8a9 + 7d9ee39 commit e5331fd
Show file tree
Hide file tree
Showing 4 changed files with 1,455 additions and 4 deletions.
4 changes: 3 additions & 1 deletion cooltools/dotfinder.py
Original file line number Diff line number Diff line change
Expand Up @@ -1770,7 +1770,9 @@ def clustering_step(
df = pd.merge(
scores_df, pixel_clust_df, how="left", left_index=True, right_index=True
)

#prevents scores_df categorical values (all chroms, including chrM)
df['chrom1'] = df['chrom1'].astype(str)
df['chrom2'] = df['chrom2'].astype(str)
# report only centroids with highest Observed:
chrom_clust_group = df.groupby(["chrom1", "chrom2", "c_label"])
centroids = df.loc[chrom_clust_group[obs_raw_name].idxmax()]
Expand Down
6 changes: 3 additions & 3 deletions cooltools/lib/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,16 +30,16 @@ def assign_supports(features, supports, labels=False, suffix=""):
for i, region in enumerate(supports):
# single-region support
if len(region) == 3:
sel = (features[c] == region[0]) & (features[e] >= region[1])
sel = (features[c] == region[0]) & (features[e] > region[1])
if region[2] is not None:
sel &= features[s] < region[2]
# paired-region support
elif len(region) == 2:
region1, region2 = region
sel1 = (features[c] == region1[0]) & (features[e] >= region1[1])
sel1 = (features[c] == region1[0]) & (features[e] > region1[1])
if region1[2] is not None:
sel1 &= features[s] < region1[2]
sel2 = (features[c] == region2[0]) & (features[e] >= region2[1])
sel2 = (features[c] == region2[0]) & (features[e] > region2[1])
if region2[2] is not None:
sel2 &= features[s] < region2[2]
sel = sel1 | sel2
Expand Down
7 changes: 7 additions & 0 deletions cooltools/snipping.py
Original file line number Diff line number Diff line change
Expand Up @@ -436,6 +436,13 @@ def __init__(self, clr, expected):
else:
raise ValueError("Expected dataframe has no columns.")

try:
for region, group in self.expected.groupby(self.regions_columns):
assert group.shape[0]==np.diff(self.clr.extent(region))[0]
except AssertionError:
raise ValueError("Region shape mismatch between expected and cooler. "
"Are they using the same resolution?")

self.binsize = self.clr.binsize
self.offsets = {}

Expand Down

0 comments on commit e5331fd

Please sign in to comment.