我正在尝试使用RDotNet
.
下面的代码是希望 R 计算两个数字的总和,C# 来获取结果并将其显示在命令窗口中。
using System;
using RDotNet;
namespace rcon
{
class Program
{
static void Main(string[] args)
{
string dllPath = @"C:\Program Files\R\R-3.1.0\bin\i386";
REngine.SetDllDirectory(dllPath);
REngine.CreateInstance("RDotNet");
//REngine engine = REngine.GetInstanceFromID("RDotNet");
using (REngine engine = REngine.GetInstanceFromID("RDotNet"))
{
var x = engine.Evaluate("x <- 1 + 2");
Console.WriteLine(x);
}
}
}
}
但是当我尝试将命令发送到 R 并取回 x 中的值时,我得到了一个错误:
“InvalidOperationException 未处理”
“由于对象的当前状态,操作无效。”
如果我探索对象“引擎”,我会看到IsRunning=false
。
这可能是问题吗?我该如何解决这个问题才能与 R 接口?