Last active
September 20, 2024 21:22
-
-
Save jboynyc/5d0319f33e71427aa42a98c1a3a915cb to your computer and use it in GitHub Desktop.
Guix-Jupyter for reproducible and reusable notebooks!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<div><bold>Switched to these Guix channels:</bold><p><table><tr><tc><a href=\"https://git.savannah.gnu.org/git/guix.git\"><code>guix</code></a></tc><tc><code>5e61de242156cdb3314abac168d9682ca7a4c28f</code></tc></tr></table></p></div>" | |
] | |
}, | |
"execution_count": 1, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
";;guix pin 5e61de242156cdb3314abac168d9682ca7a4c28f" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/html": [ | |
"<div><h3 style=\"color: green;\">Preparing environment <tt>my-python</tt> with these packages:</h3><ul><li><tt>python-ipykernel 5.1.3</tt></li><li><tt>python-pandas 0.25.2</tt></li><li><tt>python-seaborn 0.9.0</tt></li></ul></div>" | |
] | |
}, | |
"execution_count": 2, | |
"metadata": {}, | |
"output_type": "execute_result" | |
}, | |
{ | |
"data": { | |
"text/html": [ | |
"<div>Running Python 3 kernel.</div>" | |
] | |
}, | |
"execution_count": 1, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
";;guix environment my-python <- python-ipykernel python-pandas python-seaborn" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"import pandas as pd\n", | |
"import seaborn" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"True" | |
] | |
}, | |
"execution_count": 2, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"pd.__version__ == '0.25.2'" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"seaborn.set_style('whitegrid')\n", | |
"seaborn.set_context('poster')" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"<matplotlib.axes._subplots.AxesSubplot at 0x7f3a7e6e6450>" | |
] | |
}, | |
"execution_count": 4, | |
"metadata": {}, | |
"output_type": "execute_result" | |
}, | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": {}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"pd.util.testing.makeTimeDataFrame().resample('1m').mean().plot()" | |
] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Guix", | |
"language": "scheme", | |
"name": "guix" | |
}, | |
"language_info": { | |
"codemirror_mode": "scheme", | |
"file_extension": ".scm", | |
"mimetype": "application/x-scheme", | |
"name": "guile", | |
"pygments_lexer": "scheme", | |
"version": "2.2" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 2 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
To make this work simply do the following:
guix install guix-jupyter
installs jupyter and guix kernel.guix environment --ad-hoc --pure guix-jupyter jupyter -- jupyter notebook
launches notebook.;;guix
cell magic to create guix environment for notebook.guix describe
to get hash of current guix channel revision for pinning.