Как печатать на консоли RDo tNet - PullRequest
0 голосов
/ 06 августа 2020

ar envPath = Environment.GetEnvironmentVariable ("ПУТЬ"); var rBinPath = @ "C: \ R-4.0.2 \ bin \ i386"; Environment.SetEnvironmentVariable ("ПУТЬ", envPath + Path.PathSeparator + rBinPath);

        REngine r = REngine.GetInstance();

        r.Initialize();


     
        r.Evaluate("library('ggplot2')");
        r.Evaluate("set.seed(0)");
        r.Evaluate("n_samples <- 30");
        r.Evaluate("x <- runif(n_samples)");
        r.Evaluate("x <- x[order(x)]");
        r.Evaluate("y <- cos(1.5 * pi * x) + rnorm(n_samples) * 0.1");
        r.Evaluate("df <- data.frame(x, y)");
        r.Evaluate("model1 <- lm(y ~ x, data=df)");
        r.Evaluate("print(summary(model1))");
       

результат: введите описание изображения здесь

1 Ответ

0 голосов
/ 08 августа 2020

В нижней части вышеупомянутого кода, если вы добавите следующий фрагмент кода, вы получите результат вместо вывода VS в текстовом файле:

string [] data = r.Evaluate ("print(summary(model1))").AsCharacter().ToArray();
string filename ="R2Text.txt";//here you can use a fullpath, otherwise it will come out in your VS working directory
File.Create (filename).Dispose ();
for (int i=0; i<data.Length;i++)
{
File.AppendAllText (filename, data [i]+ Environment.NewLine);           
}

ваш результат будет таким : введите описание изображения здесь

Однако, если вы измените языковые настройки VS, вы можете получить то же самое. Но, изменить языковые настройки, не всегда практично.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...