我是一个相对较新的R用户,并开始使用Emacs Speaks Statistics(ESS)。我还使用rpy2(一个连接Python和R的接口),在Emacs中运行ipython shell时可以启动一个R进程。
是否可能让ESS和rpy2共享同一个R进程,这样我就可以在Python/rpy2中编写一些代码来设置一些R对象,然后切换到ESS并直接运行R命令,而不使用Python/rpy2?
例如,我要么使用
我想问题在于rpy2中的R进程是嵌入在Python解释器中的,并且如果我可以直接操作R而不经过rpy2,表示R对象的Python对象将变得“不同步”? 我承认我没有完全了解rpy2和Emacs进程处理的工作原理...
是否可能让ESS和rpy2共享同一个R进程,这样我就可以在Python/rpy2中编写一些代码来设置一些R对象,然后切换到ESS并直接运行R命令,而不使用Python/rpy2?
例如,我要么使用
M-x R
在Emacs中启动R,然后在我的ipython会话中让rpy2.robjects.r
指向或使用这个正在运行的R进程;或者我将在Python中启动R,然后让ESS连接到嵌入式Python的R进程。我想问题在于rpy2中的R进程是嵌入在Python解释器中的,并且如果我可以直接操作R而不经过rpy2,表示R对象的Python对象将变得“不同步”? 我承认我没有完全了解rpy2和Emacs进程处理的工作原理...