documented, with understandable and useful examples • maintained and supported by Kx on a best-efforts basis, at no cost to customers • released under the Apache 2 license • free for all use cases, including 64-bit and commercial use • embedPy is part of the Fusion for kdb+ interface collection Fusion interfaces to kdb+
and call Python functions. • Python functions can be called from q, and q functions can be called from Python. embedPy programmers q/kdb+ programmers embedPy embedPy gives direct access to data in kdb+ embedPy offers easy access to the numerous computational and visualization libraries
rich ecosystem of libraries such as: • Python variables and objects become q variables – and either language can act upon them • Python code and files can be embedded within q code • Python functions can be called as q functions embedPy
from a script, by prefixing the Python code with p) q)p)print(1+2) 3 You cannot run multi-line Python code directly in the console, but you can add to a q script using the syntax below. p) and subsequent lines indented according to usual Python indentation rules, for example: $cat testScript.q a:1 p)def add1(arg1): return arg1+1 embedPy
simply load the script into your q session: q)\l testScript.q q)p)print(add1(12)) 13 To run a Python script, rename the file from file.py to file.p and load in the same way as above: $cat helloq.p print(“Hello q!”) q)\l helloq.p Hello q! embedPy
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 (mulit-line 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 jupyterq
development at Kx. Libraries are released under the Apache 2 license, and are free for all use cases, including 64-bit and commercial use. EmbedPy forms the basis of machine learning initiative at Kx Machine Learning
https://anaconda.org/kx • kdb (non-commercial personal edition, requires internet connection to work) • embedPy • jupyterq Setup kdb, embedPy and juypterq TIP: installing jupyterq will automatically install the embedPy and kdb packages
NotebookApp] JupyterLab beta preview extension loaded from /home/mcclulou/ anaconda3/lib/python3.6/site-packages/jupyterlab [I 13:17:44.244 NotebookApp] JupyterLab application directory is /home/mcclulou/anaconda3/ share/jupyter/lab [I 13:17:44.306 NotebookApp] Serving notebooks from local directory: /home/mcclulou/jupyterq [I 13:17:44.308 NotebookApp] 0 active kernels [I 13:17:44.313 NotebookApp] The Jupyter Notebook is running at: [I 13:17:44.314 NotebookApp] http://localhost:8888/? token=5d2095f6a5dff27020ad9a3fddc88cec5335dd00ac02ab8b [I 13:17:44.315 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). [W 13:17:44.323 NotebookApp] No web browser found: could not locate runnable browser. [C 13:17:44.323 NotebookApp] Copy/paste this URL into your browser when you connect for the first time, to login with a token: http://localhost:8888/?token=5d2095f6a5dff27020ad9a3fddc88cec5335dd00ac02ab8b
NotebookApp] JupyterLab beta preview extension loaded from /home/mcclulou/ anaconda3/lib/python3.6/site-packages/jupyterlab [I 13:34:52.028 NotebookApp] JupyterLab application directory is /home/mcclulou/anaconda3/ share/jupyter/lab [I 13:34:52.109 NotebookApp] Serving notebooks from local directory: /home/mcclulou/notebooks/ notebooks [I 13:34:52.111 NotebookApp] 0 active kernels [I 13:34:52.116 NotebookApp] The Jupyter Notebook is running at: [I 13:34:52.116 NotebookApp] http://localhost:8888/? token=ed0be711b11472d2db5cb6ba52f6f9d23ce6aeb0afb780d7 [I 13:34:52.117 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). [W 13:34:52.195 NotebookApp] No web browser found: could not locate runnable browser. [C 13:34:52.196 NotebookApp] Copy/paste this URL into your browser when you connect for the first time, to login with a token: http://localhost:8888/?token=ed0be711b11472d2db5cb6ba52f6f9d23ce6aeb0afb780d7
visualization of real-time streaming, intraday and historical business data. Analyst For Kx provides a complete real- time data transformation, exploration and discovery workflow. Control for Kx allows organizations to manage their application landscape, instantly determining what processes run, who owns them, their parameters and functionality. Stream for Kx is a proven data management solution that can be deployed locally, in the cloud, or as part of a wider Big Data architecture. Enterprise Tools
for city accommodation • Competitive salary and expenses package • Health and travel insurance programme • Generous retirement savings programme Recruitment Interested in joining us or know someone who might be? Talk to me at the end or visit www.firstderivatives.com/careers