我安装了 jupyterconda install jupyter
并正在运行一个安装了 r 内核的笔记本conda create -n my-r-env -c r r-essentials
我正在运行笔记本并希望从 shell 运行 bash 命令。
!echo "hi"
Error in parse(text = x, srcfile = src): <text>:1:7: unexpected string constant
1: !echo "hi"
为了进行比较,在具有 python 内核的笔记本中:
!echo "hi"
hi
有没有办法设置 R 笔记本,使其在 bash 命令(也许还有其他魔法)方面具有与 ipython 笔记本相同的功能?
仅对于 bash 命令,就可以使系统命令起作用。例如,在 IRkernel 中:
system("echo 'hi'", intern=TRUE)
Output:
'hi'
或者查看文件的前 5 行:
system("head -5 data/train.csv", intern=TRUE)
由于 IPython 魔法在 IPython 内核中可用(但在 IRkernel 中不可用),我快速检查了是否可以使用rPython
and PythonInR
图书馆。然而,问题是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')")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)