Fix outdated Tutorial_DiscordMERLIN.ipynb#1157
Conversation
|
Found 1 changed notebook. Review the changes at https://app.gitnotebooks.com/stumpy-dev/stumpy/pull/1157 |
|
@ShreyasK06 |
There was a problem hiding this comment.
@ShreyasK06
Thanks again for submitting this PR. I've reviewed the changes till a certain point and shared a few comments for your consideration. Once those comments are discussed/addressed, I can review again and provide comments for the rest of the notebook.
Note:
Better to use the link provided here to review the provided comments. I've shared the link below for your convenience.
There was a problem hiding this comment.
Please remove this part (including the link) as the link is broken and the data is now created here in this notebook.
There was a problem hiding this comment.
This should be changed to Create toy data
There was a problem hiding this comment.
Did you run the cell to update figure?
There was a problem hiding this comment.
The description for T_subseq_isconstant is missing
There was a problem hiding this comment.
Did you run the cells to see the updated output here? If not, please do so and revise the description here if needed.
Pull Request Checklist
Below is a simple checklist but please do not hesitate to ask for assistance!
black(i.e.,python -m pip install blackorconda install -c conda-forge black)flake8(i.e.,python -m pip install flake8orconda install -c conda-forge flake8)pytest-cov(i.e.,python -m pip install pytest-covorconda install -c conda-forge pytest-cov)black --exclude=".*\.ipynb" --extend-exclude=".venv" --diff ./in the root stumpy directoryflake8 --extend-exclude=.venv ./in the root stumpy directory./setup.sh dev && ./test.shin the root stumpy directorySummary
Fixes #1127
This PR fixes
docs/WIP/Tutorial_DiscordMERLIN.ipynb, which was broken in several ways due to API changes and dependency updates since it was originally written. All changes are scoped strictly to the notebook file.Fix 1 —
core.preprocessnow returns 4 valuesUpdated every
T, M_T, Σ_T = core.preprocess(...)call to the correct 4-value unpack (T, M_T, Σ_T, T_subseq_isconstant = core.preprocess(...)), and threadedT_subseq_isconstantthrough_find_candidates,_get_approx_P, and_refine_candidatesso it is passed correctly tocore._massand_prescrump.Fix 2 — Dead dataset URLs replaced
https://zenodo.org/record/4276428/files/STUMPY_Basics_Taxi.csv?download=1).Fix 3 —
core._sliding_dot_productrenamedUpdated both call sites in
_find_candidatesand_refine_candidatesfromcore._sliding_dot_producttocore.sliding_dot_product.Fix 4 —
np.NINFremoved in NumPy 2.0Replaced all 8 runtime occurrences of
np.NINFacross_refine_candidates, the MP verification block,_discords, andstumpy_top_k_discordswith-np.inf. Occurrences in docstrings and comments were left untouched.Known issue — pending review discussion
The notebook still fails at
out = _discords(T, m, k=15)with:ValueError: could not broadcast input array from shape (1489,1489) into shape (1489,)
This is caused by
stumpy.scrump._prescrumpnow returning a 2D(l, k)array instead of the 1D(l,)shape_get_approx_Pexpects. Fix is pending maintainer input.