Fix rule extraction to handle constant factors #870
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Note: This branch is based on #863 's branch. Closes #672 .
Updates
ADRIA.analysis.cluster_rules
so we can check for constant factors (and ignore them) before trying to extract rules. The parameters you need to pass tocluster_rules
have changed - with that is one line less of code now.The documentation still needs to be updated - once this is done, I'll mark this as ready to review.
Example
As an example, let's fix all
SeedCriteriaWeights
and only a few of theFogCriteriaWeights
factors, run the model, cluster and target some cluster:Now if we select
Intervention
factors, everything works (as it would previously, nothing's c hanged here):If we select
FogCriteriaWeights
, some are constant and some are not. Previously this would lead to an error but now it just filters off all constant factors and everything works fine:And, finally, if we select
SeedCriteriaWeights
, because all of them are constant, this will raise an error:The error:
Below are the scatter plots for
Interventions
andFogCriteriaWeights
rules (the plot functions haven't changed):Intervention
FogCriteriaWeights