All Projects → KxSystems → jupyterq

KxSystems / jupyterq

Licence: Apache-2.0 license
Jupyter kernel for kdb+

Programming Languages

Jupyter Notebook
11667 projects
q
29 projects
python
139335 projects - #7 most used programming language
Batchfile
5799 projects
javascript
184084 projects - #8 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to jupyterq

ml.q
Machine Learning for kdb+/q
Stars: ✭ 25 (-71.26%)
Mutual labels:  kdb, q
Dyalog Jupyter Kernel
A Jupyter kernel for Dyalog APL
Stars: ✭ 26 (-70.11%)
Mutual labels:  notebook, jupyter-kernels
kafka
kdb+ to Apache Kafka adapter, for pub/sub
Stars: ✭ 38 (-56.32%)
Mutual labels:  kdb, q
kdb-tick
Latest source files for kdb+tick
Stars: ✭ 73 (-16.09%)
Mutual labels:  kdb, q
automl
Automated Machine Learning Framework for kdb+
Stars: ✭ 22 (-74.71%)
Mutual labels:  kdb, q
q4q
Source Code for "Q for Quants"
Stars: ✭ 22 (-74.71%)
Mutual labels:  kdb, q
vscode-q
vscode kdb+/q extension
Stars: ✭ 34 (-60.92%)
Mutual labels:  kdb, q
kdb nim
Nim Kdb type-safe bindings
Stars: ✭ 13 (-85.06%)
Mutual labels:  kdb, q
docs
Source for documentation site
Stars: ✭ 73 (-16.09%)
Mutual labels:  kdb, q
javakdb
Using Java with kdb+
Stars: ✭ 41 (-52.87%)
Mutual labels:  kdb, q
docs-v1
Source of code.kx.com/q
Stars: ✭ 33 (-62.07%)
Mutual labels:  kdb, q
rkdb
R client for kdb+
Stars: ✭ 37 (-57.47%)
Mutual labels:  kdb, q
Best Of Jupyter
🏆 A ranked list of awesome Jupyter Notebook, Hub and Lab projects (extensions, kernels, tools). Updated weekly.
Stars: ✭ 200 (+129.89%)
Mutual labels:  notebook, jupyter-kernels
q-mode
Emacs mode for editing q scripts and communicating with inferior q/qcon buffers
Stars: ✭ 21 (-75.86%)
Mutual labels:  kdb, q
ml
Machine-learning toolkit
Stars: ✭ 48 (-44.83%)
Mutual labels:  kdb, q
MDAPL
The de facto standard for people who are looking to learn Dyalog APL from a book. This updated version is a work in progress.
Stars: ✭ 24 (-72.41%)
Mutual labels:  notebook
sunrise
NumPy, SciPy, MRI and Music | Presented at ISMRM 2021 Sunrise Educational Session
Stars: ✭ 20 (-77.01%)
Mutual labels:  notebook
notesnook
A fully open source & end-to-end encrypted note taking alternative to Evernote.
Stars: ✭ 5,098 (+5759.77%)
Mutual labels:  notebook
pytorch notebooks
A collection of PyTorch notebooks for learning and practicing deep learning
Stars: ✭ 113 (+29.89%)
Mutual labels:  notebook
ilua
Portable Lua kernel for Jupyter
Stars: ✭ 99 (+13.79%)
Mutual labels:  jupyter-kernels

JupyterQ

GitHub release (latest by date) Travis (.org) branch AppVeyor branch

Jupyter kernel for kdb+. Features include

  • syntax highlighting for q
  • code completion for q keywords, .z/.h/.Q/.j namespace functions, and user-defined variables
  • code help for q keywords and basic help (display and type information) for user-defined objects
  • script-like execution of code (multiline input)
  • inline display of charts created using embedPy and matplotlib
  • console stdout/stderr capture and display in notebooks
  • inline loading and saving of scripts into and from notebook cells

Requirements

  • kdb+ ≥ v3.5 64-bit
  • Python ≥ 3.6
  • embedPy

Note:

As of September 5, 2020. Python 3.5 has reached end of life as indicated here. As such official support for this Python Version has been removed in favour of updates to support Python 3.8.

Overview

You can either

  • install JupyterQ to run on your local machine; or
  • download or build a Docker image in which to run JupyterQ

There are two ways to install JupyterQ on your local machine:

  1. download and install a release
  2. install with Conda – recommended if you are already using Anaconda Python

Install on local machine

Download and install a release

  1. Make sure you have installed embedPy

  2. Download a release archive from the releases page, and unzip it.

  3. Install the required Python packages with Pip or Conda

    # pip
    pip install -r requirements.txt
    # conda
    conda install --file requirements.txt
  4. Ensure QHOME is set and you have a working version of q in your PATH. Note that Jupyter will not pick up Bash aliases when starting q: the location of the q executable needs to be in your PATH.

  5. Run the install script

    Linux/macOS

    ./install.sh

    Windows

    install.bat
    

Install with Conda

  1. Download and install either the full Anaconda distribution or Miniconda for Python3.

  2. Use Conda to install JupyterQ and its dependencies

    conda install -c kx jupyterq
  3. Ensure you can run q before running JupyterQ for the first time. You may need to obtain an on-demand licence

q
…
q)\\

NOTE

If installing on a system which already has kdb+ we recommended installing JupyterQ, embedPy and the conda packaged version of kdb+ in a conda environment, this can be done using the following steps

# create a new environment and install jupyterq and its dependancies
conda create -n jupyterqenv -c kx jupyterq
# activate the environment for use
conda activate jupyterqenv

It should be noted that in this case JupyterQ, embedPy and the conda installed kdb can only be run from this activated environment.


Running after install

To run the Jupyter console

jupyter console --kernel=qpk

To run the example notebook

jupyter notebook kdb+Notebooks.ipynb

Run a Docker image

If you have Docker installed you can alternatively run:

docker run -it --name myjupyterq -p 8888:8888 kxsys/jupyterq

Now point your browser at http://localhost:8888/notebooks/kdb%2BNotebooks.ipynb.

For subsequent runs, you will not be prompted to redo the license setup when calling:

docker start -ai myjupyterq

To change the port or use the image to run your own notebooks, see the Docker README.

See instructions regarding headless/presets.

See build instructions for the image.

Using notebooks

See the notebook kdb+Notebooks.ipynb for full interactive examples and explanation. (It should be legible on GitHub.)

Documentation

See documentation on the JupyterQ homepage.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].