在 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 本身没有安装(正确)。