nbdev
papermill
Our great sponsors
nbdev | papermill | |
---|---|---|
45 | 26 | |
4,740 | 5,630 | |
0.9% | 1.3% | |
6.5 | 8.0 | |
about 1 month ago | 2 days ago | |
Jupyter Notebook | Python | |
Apache License 2.0 | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nbdev
- The Jupyter+Git problem is now solved
-
What is literate programming used for?
One example I've seen is ML/DL folks using jupyter notebooks to develop DL libraries in jupyter notebooks, see https://github.com/fastai/nbdev
-
GitHub Accelerator: our first cohort and what's next
- https://github.com/fastai/nbdev: Increase developer productivity by 10x with a new exploratory programming workflow.
-
Startups are in first batch of GitHub OS Accelerator
9. Nbdev: Boost developer productivity with an exploratory programming workflow - https://nbdev.fast.ai/
-
Start learning python for a Statistician with SAS experience and little R experience
See if you like nbdev way of working with data through python and jupyter. nbdev is an optional part that will create python packages from jupyter notebooks. Also even the simple tutorials are opinionated and will guide you to unit test your code and write CICD pipelines.
- FastKafka - free open source python lib for building Kafka-based services
-
isn't this just too much for a take home assignment?
You probably don’t have time for this for the purposes of your task, but I will also throw in the recommendation of nbdev especially if you’re a Python person. I haven’t had a project to use it on yet, but I’ve gone through the docs and the walkthrough and it seems like a great framework for starting potential projects with all the infrastructure needed for if/when they eventually get big and need all the packaging and stuff
-
Any experience dealing with a non-technical manager?
nbdev: jupyter notebooks -> python package
-
Resources to bridge the gap between jupyter notebooks and regular python development
Take a look at https://github.com/fastai/nbdev - haven't used it but supposedly the whole if fast.ai library was written that way. It sounds like a natural direction in your scenario - allowing your to keep working in a familiar environment and still producing production ready code (will, at least in paper 😅)
- Rant: Jupyter notebooks are trash.
papermill
-
Spreadsheet errors can have disastrous consequences – yet we keep making them
Pandas docs > Comparison with spreadsheets: https://pandas.pydata.org/docs/getting_started/comparison/co...
Pandas docs > I/O > Excel files: https://pandas.pydata.org/docs/user_guide/io.html#excel-file...
nteract/papermill: https://github.com/nteract/papermill :
> papermill is a tool for parameterizing, executing, and analyzing Jupyter Notebooks. [...]
> This opens up new opportunities for how notebooks can be used. For example:
> - Perhaps you have a financial report that you wish to run with different values on the first or last day of a month or at the beginning or end of the year, using parameters makes this task easier.
"The World Excel Championship is being broadcast on ESPN" (2022) https://news.ycombinator.com/item?id=32420925 :
> Computational notebook speedrun ideas:
-
Jupyter Kernel Architecture
There is Papermill ... https://github.com/nteract/papermill
-
Git and Jupyter Notebooks Guide
https://github.com/jupyter/enhancement-proposals/pull/103#is...
Papermill is one tool for running Jupyter notebooks as reports; with the date in the filename. https://papermill.readthedocs.io/en/latest/
-
JupyterLab 4.0
You may be interested in papermill to address the parametrized analysis problem [1]. I think (but I'm not positive) this is what the data team at a previous job used to automate running notebooks for all sorts nightly reports.
[1] https://papermill.readthedocs.io/en/latest/#
-
Show HN: Mercury – convert Jupyter Notebooks to Web Apps without code rewriting
I'm using Papermill to operationalize Notebooks (https://github.com/nteract/papermill), it e.g. also has airflow support. I'm really happy with papermill for automatic notebook execution, in my field it's nice that we can go very quickly from analysis to operations -- while having super transparent "logging" in the executed notebooks.
-
What's the best thing/library you learned this year ?
papermill bcpandas fastapi
-
Does the Jupyter API allow using Jupyter from the CL?
But you can execute your notebook using Jupyter-run or papermill.
-
Running Jupyter notebooks in parallel
As a first option, we will use Papermill, which has a Python API that allows us to run different notebooks using some functions:
-
Tips for using Jupyter Notebooks with GitHub
Papermill can also target cloud storage outputs for hosting rendered notebooks, execute notebooks from custom Python code, and even be used within distributed data pipelines like Dagster (see Dagstermill). For more information, see the papermill documentation.
-
Three Tools for Executing Jupyter Notebooks
Papermill Source Code
What are some alternatives?
ploomber - The fastest ⚡️ way to build data pipelines. Develop iteratively, deploy anywhere. ☁️
nbconvert - Jupyter Notebook Conversion
dbt - dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications. [Moved to: https://github.com/dbt-labs/dbt-core]
jupytext - Jupyter Notebooks as Markdown Documents, Julia, Python or R scripts
airflow-notebook - This repository is no longer maintained.
rr - Record and Replay Framework
voila - Voilà turns Jupyter notebooks into standalone web applications
Jupyter-PowerShell - Jupyter Kernel for PowerShell
dbt-core - dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications.
Airflow - Apache Airflow - A platform to programmatically author, schedule, and monitor workflows