pymc-examples icon indicating copy to clipboard operation
pymc-examples copied to clipboard

Update example notebooks for better rendering

Open reshamas opened this issue 3 years ago • 5 comments

NOTE

This issue is reserved for the #DataUmbrellaPyMCSprint

References

List of PyMC Example Notebooks that Need to be Updated

examples/case_studies

KeyError: "Dimensions {'obs'} are unknown to the model and cannot be used to specify a `shape`."

examples/diagnostics_and_criticism

examples/generalized_linear_models

ImportError: This function requires the python library graphviz, along with binaries. The easiest way to install all of this is by running

	conda install -c conda-forge python-graphviz
TypeError: You are calling an Aesara function with PyTensor variables.
Starting with PyMC 5.0, Aesara was replaced by PyTensor (see https://www.pymc.io/blog/pytensor_announcement.html).
Replace your import of aesara.tensor with pytensor.tensor.

examples/howto

examples/survival_analysis

Set-up Instructions

  1. Fork and clone this repository; set upstream remote, etc.
  2. A virtual environment should be set up and the packages in requirements.txt should be installed.
  3. Use a feature branch git checkout -b nb_feature_branch
  4. Reminder: sync the repo

Notes for Updating Notebook

  1. Update First Cell.
  2. For tags, see options in current notebook tags
  3. Update Last Cell.
  4. Optional: Go through Jupyter style guide and make other updates.
  5. For authorship of notebooks, we can search in the "pymc" repo pymc closed pull requests.
  6. Check that all links work in the notebook
  7. Replace mentions of "PyMC3" to "PyMC"
  8. Watermark: Add a Markdown cell for ## Watermark
  9. References can be found in examples/references.bib
  10. REMINDER: Rerun full notebook before submitting a PR or creating the myst file.
  11. Run pre-commit (pre-commit run --all)
  12. Example of description text for PR: https://github.com/pymc-devs/pymc-examples/pull/402

References

Note: pymc-examples#8

* Moved from pymc to pymc-examples repo in December 2020 ([pymc-examples#8](https://github.com/pymc-devs/pymc-examples/pull/8))
  • references.bib
  • If extra dependencies have to be added: https://docs.pymc.io/en/latest/contributing/jupyter_style.html#extra-dependencies

Examples of references

Example 1: [ArviZ's naming convention](https://arviz-devs.github.io/arviz/schema/schema.html#sample-stats)

{ref}`ArviZ's naming convention <arviz:schema>`

Example 2: [check this page](https://docs.pymc.io/api/inference.html#module-pymc3.step_methods.hmc.nuts)

{class}`pymc.NUTS`

FAQs

Syncing Repo (via @symeneses)

# update you main branch
git checkout main
git fetch upstream
git rebase upstream/main

# update your branch
git checkout feature
git rebase origin/main

Running pre-commit

(Sandra notes)

  • Stage the notebook (git commit -m 'message')
  • Run pre-commit, this will create the .myst file (pre-commit run --all)
  • git status ==> you will now see a .myst file created
  • Stage the .myst file (git commit -am 'adding myst file')
  • Run pre-commit and tests should now pass (pre-commit run --all)
  • Push changes: git push origin branch_name

There already is a "I will work on this" comment on the issue

If the issue is more than 3 months old, you can ignore that message and comment yourself you plan to work on that issue.

reshamas avatar Jul 09 '22 17:07 reshamas

Updated the title as the task is about updating the markdown content and metadata, without rerunning the notebook.

The issue to update the notebooks from v3 to v4 is https://github.com/pymc-devs/pymc-examples/issues/333. The two tasks are independent and can be done sequentially or together... hoping to avoid confusion about the scope of the issue.

OriolAbril avatar Jul 11 '22 11:07 OriolAbril

I am working on the notebook updating_priors. Waiting for the issue https://github.com/pymc-devs/pymc/issues/5959 to be solved.

symeneses avatar Jul 22 '22 08:07 symeneses

I am working on: examples/diagnostics_and_criticism/Diagnosing_biased_Inference_with_Divergences.ipynb

@jlindbloom I didn't notice you were working on this. Sorry! I submitted a PR on this one, #402

reshamas avatar Jul 22 '22 20:07 reshamas