如何在r.net中使用lm函数

本文关键字:lm 函数 net | 更新日期: 2023-09-27 18:21:03

我需要在我的应用程序中使用回归(线性),因为我正在使用R.Net。但当我使用函数lm()时,它显示了一个错误"应用程序中的错误"。但相同的代码将在"R"中工作。我的代码有问题吗?或者我需要导入更多的包吗?。。。

我的代码

 private void Form1_Load(object sender, EventArgs e)
    {
        REngine.SetDllDirectory(@"C:'Program Files'R'R-2.13.1'bin'i386");            
        REngine engine = REngine.CreateInstance("RDotNet");
        engine.Evaluate("WQ<-read.csv('c:''Documents and Settings''hardinmvarghese''Desktop''reg.csv')");
        engine.EagerEvaluate("rst <- lm(V1 ~ V2+V3+V4+V5,WQ)");
    }

如果有人知道这一点,请帮助我…

如何在r.net中使用lm函数

您对.Net中的该目录有读/写权限吗?使用try-catch块并检查Exception类型和Message。也许REngine代码没有什么问题。

private void Form1_Load(object sender, EventArgs e)
{
    try
    {
        REngine.SetDllDirectory(@"C:'Program Files'R'R-2.13.1'bin'i386");            
        REngine engine = REngine.CreateInstance("RDotNet");
        engine.Evaluate("WQ<-read.csv('c:''Documents and Settings''hardinmvarghese''Desktop''reg.csv')");
        engine.EagerEvaluate("rst <- lm(V1 ~ V2+V3+V4+V5,WQ)");
    }
    catch(Exception ex)
    {
        MessageBox.Show(ex.GetType().ToString() + " " + ex.Message);
    }
}