【发布时间】:2014-04-10 14:29:57
【问题描述】:
有没有什么包或者函数可以帮助读写R的RData文件到C#/F#的Deedle包中?
【问题讨论】:
-
我现在才注意到这个问题 - 下次,请随意添加“F#”标签以提高问题的可见性!
有没有什么包或者函数可以帮助读写R的RData文件到C#/F#的Deedle包中?
【问题讨论】:
在当前版本中,最好的方法是使用 R 中的 new.env、ls 和 get 函数。以下 sn-p 列出了已保存环境中的所有值:
open RDotNet
open RProvider
open RProvider.``base``
// Create new environment and load sample RData file
let env = R.new_env()
let a = R.load(@"C:\Temp\test.rdata", env)
// Use 'ls' to list all values in the environment
for f in R.ls(env).GetValue<string[]>() do
// Print the value (using the default conversion)
R.get("foo", envir=env).Value |> printfn "%A"
我整理了一个简单的类型提供程序,通过编写RData<"Sample.RData"> 并生成一个包含所有环境对象作为成员的类型(你可以find a sample here),它可以让您更好地做到这一点。要使用它,您需要从该分支中的源代码构建 R 提供程序。
【讨论】: