在R笔记本中的R和Python之间传递变量
在R笔记本中工作时: 如果我在一个R块中定义了一个变量,它将被添加到全局环境中,并且所有其他R块都可以访问它在R笔记本中的R和Python之间传递变量,python,r,rnotebook,Python,R,Rnotebook,在R笔记本中工作时: 如果我在一个R块中定义了一个变量,它将被添加到全局环境中,并且所有其他R块都可以访问它 ```{r} a = 1 + 4 a ``` 然而,即使使用rpy2,我也无法将变量传递到Python块中,也无法从Python访问R的全局环境 ```{python, engine.path="/anaconda/bin/python"} import rpy2.robjects as robjects a = robjects.r['a'] print(a[0]) ``` 有办法
```{r}
a = 1 + 4
a
```
然而,即使使用rpy2,我也无法将变量传递到Python块中,也无法从Python访问R的全局环境
```{python, engine.path="/anaconda/bin/python"}
import rpy2.robjects as robjects
a = robjects.r['a']
print(a[0])
```
有办法做到这一点吗?如果不是,我不认为在R笔记本中使用非R语言有什么意义。我可以在Jupiter笔记本中使用Magics,但这似乎不那么容易。Magics很容易,而且它们是为这类事情而设计的,你一定要这么做。我可能完全错了(因此将此作为一个注释),但我记得他们在一次演示中使用了
feather
。我不确定这两种语言之间是否有传递指针的方法,或者这两种语言是否能够理解彼此的指针……有一个非常有知识的笔记本,它展示了如何使用魔法在Jupyter笔记本中连接Python和R。免责声明:作者是我的前教授。@alec_djinn我必须全力以赴学习,哈哈。谢谢。@MichaelChirico我会更仔细地研究的。谢谢