C#-将R数据帧转换为Deedle.Frame

C#-将R数据帧转换为Deedle.Frame,c#,r,deedle,r.net,C#,R,Deedle,R.net,我有一个C#应用程序,它需要一个Deedle框架作为输入数据。我还有一个返回数据帧的R脚本,我不想用C#在R脚本中重新实现算法。 我尝试使用R.Net,我可以从C#应用程序中的R脚本获取数据帧,但它的类型是RDotNet.DataFrame。 在C#代码中是否有将RDotNet.DataFrame转换为Deedle Frame的方法 我还考虑创建一个调用R脚本的F#dll库,然后在C#代码中使用该dll库。有可能吗?如果使用F#中的Deedle,那么也可以使用R类型提供程序。这两者很好地集成在一

我有一个C#应用程序,它需要一个Deedle框架作为输入数据。我还有一个返回数据帧的R脚本,我不想用C#在R脚本中重新实现算法。 我尝试使用R.Net,我可以从C#应用程序中的R脚本获取数据帧,但它的类型是RDotNet.DataFrame。 在C#代码中是否有将RDotNet.DataFrame转换为Deedle Frame的方法

我还考虑创建一个调用R脚本的F#dll库,然后在C#代码中使用该dll库。有可能吗?

如果使用F#中的Deedle,那么也可以使用R类型提供程序。这两者很好地集成在一起,您可以从F#调用R并返回Deedle数据帧。有

R提供程序将自动将R数据帧转换为数据帧。例如:

open RProvider.datasets

// Get mtcars as a typed Deedle frame
let mtcars : Frame<string, string> = R.mtcars.GetValue()
打开RProvider.dataset
//将mtcars作为一个键入的Deedle框架
let mtcars:Frame=R.mtcars.GetValue()
在R provider和Deedle中进行转换的源代码也可用。因此,如果您想直接使用它,首先要使用
tryCreateFrame
函数


目前,这并没有真正暴露于C中,但我们肯定会欢迎一个pull请求,使Deedle:-)实现这一点。

我现在可以使用F获取R脚本返回的帧。但是如何向R脚本发送Deedle帧。我想建立一个应用程序,接收和删除帧作为输入数据,做一些数据处理,然后返回一个删除帧作为输出数据。这应该与R提供商也自动工作。无论何时将Deedle frame传递给R提供程序导出的函数,它都将自动转换为R frame。请参阅:当我运行这行代码
R.assign(“dataframe”,frame)
,frame是一个Deedle.frame,我看到它还将数据帧打印到控制台屏幕。但是当我运行这个
R.assign(“text”,text)
时,text是一个文本字符串,它不会打印任何内容。并且
让frame:frame=result.GetValue()
,这行代码也会打印数据。所以我认为Deedle.Frame和R Frame之间的转换器可以打印数据。有什么办法可以避免吗?