Skip to content

Update example notebooks for better rendering #394

Open
@reshamas

Description

@reshamas

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: Notebook divergence, update header and footer #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))

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions