在 Rdotnet 中使用 R 引擎时出现异常
Exception while using R Engine in Rdotnet
我已经通过 NuGet 包管理器安装了 R.NET.Community
并添加了以下代码(以启动程序),但我在 Rengine.SetEnvironmentVariables()
行不断收到错误消息;代码甚至没有前进。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using RDotNet;
namespace WF_CRM_R
{
public class CrmLogic
{
public void GetCrmOutput(Dictionary<int, List<double>> crmInput)
{
REngine.SetEnvironmentVariables();
REngine engine = REngine.GetInstance();
double[,] input = new double[crmInput[0].Count, crmInput.Count];
for (int i = 0; i < crmInput.Values.Count; i++)
{
for (int j = 0; j < crmInput.Count; j++)
{
input[i, j] = crmInput[crmInput.Keys.ElementAt(i)].ElementAt(j);
}
}
var rMatrix = engine.CreateNumericMatrix(input);
engine.SetSymbol("my.data.matrix.inj", rMatrix);
engine.Evaluate("source('D:/R/Learning R/CRM_TestData_R_Ver5.R')");
var output = engine.GetSymbol("my.data.matrix.inj").AsNumeric();
}
}
}
错误截图在这里。
这是一个简单的 Rdotnet 测试,我不明白哪里出了问题!
我快速浏览了 R.NET 的文档,发现了以下内容:
SetEnvironmentVariables
, on Windows, looks at the Registry settings
set up by the R installer.
因此,据我所知,您需要先安装 R,然后才能使用 R.NET。我的猜测是 R 本身没有安装(正确)。
我已经通过 NuGet 包管理器安装了 R.NET.Community
并添加了以下代码(以启动程序),但我在 Rengine.SetEnvironmentVariables()
行不断收到错误消息;代码甚至没有前进。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using RDotNet;
namespace WF_CRM_R
{
public class CrmLogic
{
public void GetCrmOutput(Dictionary<int, List<double>> crmInput)
{
REngine.SetEnvironmentVariables();
REngine engine = REngine.GetInstance();
double[,] input = new double[crmInput[0].Count, crmInput.Count];
for (int i = 0; i < crmInput.Values.Count; i++)
{
for (int j = 0; j < crmInput.Count; j++)
{
input[i, j] = crmInput[crmInput.Keys.ElementAt(i)].ElementAt(j);
}
}
var rMatrix = engine.CreateNumericMatrix(input);
engine.SetSymbol("my.data.matrix.inj", rMatrix);
engine.Evaluate("source('D:/R/Learning R/CRM_TestData_R_Ver5.R')");
var output = engine.GetSymbol("my.data.matrix.inj").AsNumeric();
}
}
}
错误截图在这里。
这是一个简单的 Rdotnet 测试,我不明白哪里出了问题!
我快速浏览了 R.NET 的文档,发现了以下内容:
SetEnvironmentVariables
, on Windows, looks at the Registry settings set up by the R installer.
因此,据我所知,您需要先安装 R,然后才能使用 R.NET。我的猜测是 R 本身没有安装(正确)。