graspologic
graspologic copied to clipboard
Bug fix for SBM estimator with some size-one block and loops=False
Reference Issues/PRs
See Issue #1055
What does this implement/fix? Briefly explain your changes.
Expected Behavior
Any size-1 block should just have zero probability.
Actual Behavior
In sbm_estimators.py
, _calculate_block_p
calls _calculate_p
, which divides zero when block.size = 0
.
This can happen when some block has size one and loops=False
is used.
Adding
if block.size == 0:
continue
before Line 519 of graspologic/graspologic/models/sbm_estimators.py
should do the trick.