Predefined data input tables for Jupyter notebooks
Project description
jupyter-datainputtable
Tools for generating predefined data input tables for use in Jupyter notebooks. This is primarily for student worksheets.
Current Features:
- Can create a table using a python command in the Jupyter notebook.
- If using JupyterPhysSciLab/JupyterPiDAQ or JupyterPhysSciLab/InstructorTools tables can be created using menu items in the Jupyter notebook (recommended usage).
- Table column and row labels can be locked once set.
- Number of rows and columns must be chosen on initial creation.
- Table will survive deletion of all cell output data.
- Default setting is to make the code cell that creates the table uneditable and undeletable.
- Table creation code will work without this package installed in the Jupyter kernel. Tables are viewable, but not editable in a plain vanilla Jupyter install.
- Option to create Pandas DataFrame from the table if Pandas imported as
pd
. If user tries without Pandas an explanation is provided. Versions >=0.7.0 properly handle cells that are empty or contain text.
Wishlist:
- Add rows to existing table.
Installation
Installation using pip into a virtual environment is recommended.
Production
-
If not installed, install pipenv:
$ pip3 install --user pipenv
. You may need to add~/.local/bin
to yourPATH
to makepipenv
available in your command shell. More discussion: The Hitchhiker's Guide to Python. -
Navigate to the directory where this package will be installed.
-
Start a shell in the environment
$ pipenv shell
. -
Install using pip.
$ pip install jupyter-datainputtable
. This will install Jupyter into the same virtual environment if you do not already have it on your machine. If Jupyter is already installed the virtual environment will use the existing installation. This takes a long time on a Raspberry Pi. It will not run on a 3B+ without at least 1 GB of swap. See: Build Jupyter on a Pi.- Still within the environment shell test this by starting jupyter
$ jupyter notebook
. Jupyter should launch in your browser.- Open a new notebook using the default (Python 3) kernel.
- In the first cell import the input_table module:
from input_table import *
- To try use the command
create_input_table()
in the next cell. This should generate a blank code cell and another code cell that has a table in the output for you to define your table dimensions. - If you define the dimensions the input table will be created for you.
-
Optional You can make this environment available to an alternate Jupyter install as a special kernel when you are the user.
- Make sure you are running in your virtual environment
$ pipenv shell
in the directory for virtual environment will do that. - Issue the command to add this as a kernel to your personal space:
$ python -m ipykernel install --user --name=<name-you-want-for-kernel>
. - More information is available in the Jupyter/Ipython documentation. A simple tutorial from Nikolai Jankiev (Parametric Thoughts) can be found here.
- Make sure you are running in your virtual environment
Development
Simply replace $ pip install jupyter-datainputtable
with $ pip install -e jupyter-datainputtable
in the Production
instructions.
Issues or comments
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for jupyter-datainputtable-0.7.1rc2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 53e907daa1cc52643b4126e9200d9edb0d653946ac60b03f8d205d1f81abed02 |
|
MD5 | 95672a792a8a6769f47498b0072d06e5 |
|
BLAKE2b-256 | 080695c80e8ec0d0f58d52403f896c2c46ceff09f798fca9428e97790c2d72b5 |
Hashes for jupyter_datainputtable-0.7.1rc2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77c41b43a94a2fa57ad1869d7641f7ec0383f4b6420c6d0759e4a1c818955a83 |
|
MD5 | eb35defd2907e8737b52ab2c0d7a9cb1 |
|
BLAKE2b-256 | e80db32e5fbe702a18ae94da84fa8b1e85a14a174a006bdbc83ab09310997a14 |