如何通过VBnet(或C#)与R通信

最近,我用VB.net开发了一个实验应用程序(在Windows平台上),当应用程序收集数据时,我想用R来分析数据,但我不知道如何与R通信 (换句话说, 我想在我自己的应用程序中将R脚本发送到R )。 如果有人能给我一些建议或一些参考文件,我将不胜感激。 非常感谢你!

我建议你试试R.NET 。 模糊说:

R.NET使.NET Framework能够与R统计计算协作。 R.NET需要在R环境中安装.NET Framework 4和本机DLL。 您无需其他额外安装。 使用您的特殊语言享受统计和编程。

它是一个开源绑定,似乎比statconn工具更简单,因为它不通过DCOM。 LGPL许可,因此也免费用于商业用途。 你可以结合使用Excel-DNA将R通过.NET公开给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类可用(在上面的post中链接)如果有人仍然在VB6上使用或使用VBA并希望通过简单安装快速启动和运行R。

包含一个简单的演示应用程序,演示如何从C#向R发送和接收数据。

为此目的,用户使用StatConn DCOM库而不是R.NET。 根据我自己的经验,它比.NET库更稳定。

为此,您需要安装R,从任何CRAN存储库添加扩展rcom和rsproxy并安装StatConn DCOM。 安装完这些后,您可以通过DCOM包附带的示例程序检查您的R连接是否正常工作。

如果这些工作正常,您可以通过Visual Studio将所有statconn引用添加到.NET项目中。

祝好运