最近用VB.net(Windows平台)开发了一个实验应用程序,当应用程序收集数据时,我想用R来分析数据,但我不知道如何与R通信(换句话说,我想在我自己的应用程序中将 R 脚本发送到 R)。如果有人能给我一些建议或一些参考文件,我将不胜感激。非常感谢!
3 回答
我建议您尝试R.NET。宣传语说:
R.NET 使 .NET Framework 能够与 R 统计计算协作。R.NET 需要 .NET Framework 4 和与 R 环境一起安装的本机 DLL。您不需要其他额外的安装。使用 R 以您的特殊语言享受统计和编程。
它是一个开源绑定,看起来比 statconn 工具简单一些,因为它不通过 DCOM。LGPL 许可,因此也可免费用于商业用途。您可以结合Excel-DNA通过 .NET 将 R 暴露给 Excel - 这里有一些讨论:http ://www.r-bloggers.com/yet-another-way-to-use-r-in-excel-for -net-programmer/ .
statconn 和 R.Net 的替代方法是使用 mt4r dll,只需将 cMT4R C# 类放入您的项目并开始使用 R。我使用了 statconn,并且仍然经常这样做以提高数据传递的速度。我从来没有想过 R.Net。
但是,如果您尝试以最简单的安装方式启动并运行,请查看以下链接,该链接描述了 MT4R 的界面和安装。在您的项目中包含 C# 类后,您只需使用计算机的 R 路径更新该类,DLL 将完成繁重的工作。类界面直观且易于使用。
https://sites.google.com/site/marketformula/vb6-to-c/vb6-to-c-downloads/calling-r-from-csharp-dotnet
如果有人仍在使用 VB6 或使用 VBA 并且想要一种通过简单安装快速启动和运行 R 的方法,那么还有一个可用的 VB6 类(链接在上面的帖子中)。
包含一个简单的演示应用程序,展示了如何从 C# 向 R 发送和接收数据。
为此,使用 StatConn DCOM 库而不是 R.NET。以我自己的经验,它比 .NET 库稳定得多。
为此,您需要安装 R,从任何 CRAN 存储库添加扩展 rcom 和 rsproxy,然后安装 StatConn DCOM。安装这些后,您可以通过 DCOM 包附带的示例程序检查您的 R 连接是否正常工作。
如果这些工作正常,您可以通过 Visual Studio 将所有 statconn 引用添加到您的 .NET 项目。
祝你好运