2016-02-09 72 views
8

我安装jupyter与conda install jupyter和正在运行与conda create -n my-r-env -c r r-essentials在R jupyter笔记本中使用ipython magics?

安装我运行一个笔记本,并希望从shell中运行bash命令将R籽粒的笔记本电脑。

!echo "hi" 
Error in parse(text = x, srcfile = src): <text>:1:7: unexpected string constant 
1: !echo "hi" 

为了比较,在笔记本采用了蟒蛇的内核:

!echo "hi" 
hi 

有没有办法设立研发的笔记本电脑具有相同的功能IPython的笔记本与问候来砸命令(和也许其他魔术)?

+1

它看起来是不可能的:https://github.com/IRkernel/IRkernel/issues/244 – elsherbini

回答

6

对于bash命令,可以使系统命令正常工作。例如,在IRkernel:

system("echo 'hi'", intern=TRUE) 

输出:

'hi' 

或者看到的第5行的文件的:

system("head -5 data/train.csv", intern=TRUE) 

作为IPython的魔法处于IPython的内核可用(但不在IRkernel中),我做了一个快速检查,看是否可以使用rPythonPythonInR库来访问这些库。然而,问题是get_ipython()是不是到Python代码可见,所以没有下面的工作:

library("rPython") 
rPython::python.exec("from IPython import get_ipython; get_ipython().run_cell_magic('writefile', 'test.txt', 'This is a test')") 

library("PythonInR") 
PythonInR::pyExec("from IPython import get_ipython; get_ipython().run_cell_magic('head -5 data/test.csv')") 
相关问题