前一段时间,您曾经能够安装rcom
package in R to use COM scripting(例如,访问外部程序。)不幸的是,seems to be discontinued:
软件包'rcom'已从CRAN存储库中删除。
可以从存档中获取以前可用的版本。
这取决于statconnDCOM,现在限制使用,相反 对于具有FOSS许可证的包裹的CRAN政策。看到 http://rcom.univie.ac.at/和http://www.statconn.com/。
在存档和statconn链接之后并在R版本3中安装一个旧版本会出现错误:
“错误:包'rcom'是在R 3.0.0之前构建的:请重新安装 它”。
我对R不是很熟悉,但似乎无法绕过这条消息 - 毕竟,安装时会发生这种情况,所以重新安装似乎不是答案。似乎rcom
根本不适用于最近的(3.0+)R版本。我也扫描了package list,虽然搜索“COM”会返回超过一百个结果,这是可能的点击它们时我错过了正确的一个。
如何使用rcom
包,或以其他方式使用R内的COM?
(注意:我代表一位同事问这个问题。我根本没有R自己的经验。我们两个人在寻找答案时都找不到任何东西。我相信其他人也在使用COM在最新版本的R中,尽管!)
答案 0 :(得分:7)
几个月前我查看了rcom源代码。看来我可以在R3.0.1上构建并安装OK。如果它有帮助,下面是程序。
install.packages('rscproxy')
转到包含'rcom'文件夹的文件夹,并在命令提示符处:
set R="c:\Program Files\R\R-3.0.1\bin\i386\R.exe"
%R% CMD check --no-manual rcom
检查通过没有太多投诉。您对--no-manual选项的调用(如果您安装了MiKTeX,可以将其删除)
%R% CMD INSTALL rcom
应该导致
installing to c:/Rlib/rcom/libs/i386
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
rcom requires a current version of statconnDCOM installed.
To install statconnDCOM type
installstatconnDCOM()
This will download and install the current version of statconnDCOM
You will need a working Internet connection
because installation needs to download a file.
* DONE (rcom)
library(rcom)
installstatconnDCOM()
我尝试了comRegisterRegistry() ; comRegisterServer()
; x<-comGetObject("Excel.Application")
,但我为x
获取了一个NULL。我不是rcom的用户,所以虽然它似乎编译得很好;它可能不再起作用了。
如果您碰巧需要访问.NET代码,那么一个可行的选择(是的,我有提及它的既得利益)可能是rClr包。
希望这会有所帮助;我很想知道你怎么走。
答案 1 :(得分:5)
这真的应该是一个评论,但我还没有足够的代表留下一个。 我发现上述步骤对我不起作用,但Lisa Ann在这个问题RExcel in R 3.0.x上发布的答案确实解决了我安装rcom的问题。由于您需要rcom来运行RExcel,因此安装RExcel的初始步骤包括在较新版本的R上安装rcom(例如3.0.2)。
具体来说,遵循有关statconn wiki的建议,http://homepage.univie.ac.at/erich.neuwirth/php/rcomwiki/doku.php?id=wiki:how_to_install
如果您升级R,也需要按照这些说明操作,即在安装RExcel后安装新的&gt;版本的R。
下载statconn DCOM服务器并执行您下载的程序 以管理员身份启动R(在Windows 7上,您需要右键单击R图标并单击&gt;相应项目) 在R中,运行以下命令(必须以管理员身份启动R才能执行此操作)
install.packages(C( “rscproxy”, “RCOM”),回购= “http://rcom.univie.ac.at/download”,LIB = .Library)
库(RCOM)
comRegisterRegistry()
现在您已经安装了rcom,[安装RExcel的说明遵循...]
答案 2 :(得分:2)
rcom和rscproxy的新版本(也适用于当前版本的R)可从其他存储库获得。只需使用http://rcom.univie.ac.at/download作为R存储库进行安装,您就可以从那里下载并安装二进制版本的statconn软件包。
希望这有帮助!