2017-09-29 54 views
1

我是Jupyter笔记本新手,我试图用rpy2来设置一个与Python和R.我有给我的错误的SyntaxError行%%细胞魔术标签不工作Jupyter笔记本?

%%R -i df 

:无效的语法

然而,当我只用一个%,如

%R require(ggplot2) 

能正常工作。我该如何解决这个问题?我正在使用Python 2.7。

+0

'%'前缀是用于行魔术,而'%%'前缀是用于单元格魔术 –

+0

你知道为什么单元魔术字前缀给出语法错误,而行魔术前缀不行吗?我加载了rpy2.ipython。 –

+0

是的,细胞魔法必须是该线上的唯一指令,并且细胞的主体不能为空。 (见下面的答案) –

回答

0

%前缀为换行符,而%%前缀为换行符。

%%R # <-- must be the only instruction on this line 
{body of cell in R code} 

而:

%R {one line of R code} 

我没有安装R,但我认为你可能想叫R上的bash命令;在这种情况下,用!调用命令:

!R -i df 

举例来说,如果我输入!python -i,我得到的信息对我目前的Python环境:

Python 3.6.2 |Anaconda custom (x86_64)| (default, Jul 20 2017, 13:14:59) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> 
+1

谢谢,这工作。 –

+0

太棒了,很高兴我能帮上忙。 –

1

这是一个老问题,但我跑今天进入同样的问题。 Reblochon Masque的答案从今天起不再适用。 %%R -i df在细胞中间抛出invalid syntax!R -i df也会抛出WARNING: unknown option '-i' ARGUMENT 'df' __ignored__

这是我需要做的细胞魔法R工作:

  1. 遵循this instruction安装RRJSONIOhttr(包名称确实是小写),Pythonrpy2。不需要进一步的配置。

  2. 只放一行%load_ext rpy2.ipython在一个单元格中调用rpy2

  3. %%R必须在一个单元格的开头,所以我把这一行放在下一个单元格中。

  4. %%R后单元格的主体不能为空。

  5. %%R -i df确实按预期工作。

+0

你能用一个例子来说明你的观点吗? – Vin

相关问题