Skip to content
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples remove need for calling Revents Nov 21, 2017
src block R ops from threads other then bind thread Jun 27, 2018
.clang-format remove need for calling Revents Nov 21, 2017
.gitignore
.travis.yml
CONTRIBUTING.md update travis and readme Nov 14, 2017
LICENSE
Makefile remove need for calling Revents Nov 21, 2017
README.md
appveyor.yml
embedr.c
rinit.q
rtest.q add example for peach Jun 27, 2018
w32.sh add win linking files Nov 13, 2017
w64.sh add win linking files Nov 13, 2017

README.md

embedR: Embedding R inside q

See Kx wiki http://code.kx.com/q/interfaces/with-r/#calling-r-from-q

Installation

Download

Download the appropriate release archive from releases page.

Unpack and install content of the archive

environment action
Linux tar xzvf embedr_linux-v*.tar.gz -C $QHOME --strip 1
macOS tar xzvf embedr_osx-v*.tar.gz -C $QHOME --strip 1
Windows Open the archive and copy content of the embedr folder (embedr\*) to %QHOME% or c:\q
Copy R_HOME/x64/.dll or R_HOME/i386/.dll to QHOME/w64 or QHOME/w32 respectively.

Calling R

When calling R, you need to set R_HOME. Required are:

# Linux/macOS
export R_HOME=`R RHOME`
# Windows
for /f "delims=" %a in ('R RHOME') do @set R_HOME=%a

The library has four main methods:

  • Ropen: Initialise embedded R. Optional to call. Allows to set verbose mode as Ropen 1.
  • Rcmd: run an R command, do not return a result
  • Rget: run an R command, return the result to q
  • Rset: set a variable in the R memory space

Interactive plotting

If using interactive plotting with lattice and/or ggplot2 you will need to call print on chart object.

Examples

See examples folder.

Note: Examples are kdb+ 3.5 or higher.

Example 1.

e4.q is a simple example of plot 'moving window volatility' of returns. Converted from http://www.mayin.org/ajayshah/KB/R/html/p4.html

Example 2.

pcd.q is based on Corporate credit card transactions 2014-15.

Please download csv file from the link above and place it in the same folder as pcd.q under name pcd2014v1.csv.

Example 3.

http://data.london.gov.uk/datastore/package/tubenetwork-performance-data

Left for the reader :)

You can’t perform that action at this time.