育种数据分析之放飞自我 2017-08-21 11:43 采纳率: 0%
浏览 2516
已结题

C# 调用R,R.net,报错,显示 “Directory '' does not exist

参考代码:https://rdotnet.codeplex.com/

我的代码:

 using System;
using System.Linq;
using RDotNet;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            REngine.SetEnvironmentVariables();
            // There are several options to initialize the engine, but by default the following suffice:
            REngine engine = REngine.GetInstance();

            // .NET Framework array to R vector.
            NumericVector group1 = engine.CreateNumericVector(new double[] { 30.02, 29.99, 30.11, 29.97, 30.01, 29.99 });
            engine.SetSymbol("group1", group1);
            // Direct parsing from R script.
            NumericVector group2 = engine.Evaluate("group2 <- c(29.89, 29.93, 29.72, 29.98, 30.02, 29.98)").AsNumeric();

            // Test difference of mean and get the P-value.
            GenericVector testResult = engine.Evaluate("t.test(group1, group2)").AsList();
            double p = testResult["p.value"].AsNumeric().First();

            Console.WriteLine("Group1: [{0}]", string.Join(", ", group1));
            Console.WriteLine("Group2: [{0}]", string.Join(", ", group2));
            Console.WriteLine("P-value = {0:0.000}", p);

            // you should always dispose of the REngine properly.
            // After disposing of the engine, you cannot reinitialize nor reuse it
            engine.Dispose();

        }
    }
}

报错:

图片说明

System.IO.DirectoryNotFoundException:“Directory '' does not exist - cannot set the environment variable R_HOME to that value”
显示文件不存在,搜索了半天也没有找到答案,

新手上路,多多指教,十分感谢。

  • 写回答

2条回答 默认 最新

  • zqbnqsdsmd 2018-06-04 15:48
    关注
    评论

报告相同问题?