1

我正在尝试使用一些代码。我使用rinterop作为参考。

我有一个Frame<DateTime,string>我尝试发送到 R 使用

let frame = 
    let aSerie = 
        Series.ofObservations 
            [ DateTime(2013,1,1) => 10.0
              DateTime(2013,1,4) => 20.0
              DateTime(2013,1,8) => 30.0 ] 
    Frame(["Hello"], [aSerie])
R.as_data_frame(frame)

这给出了以下内容:

System.Exception:没有为类型 Deedle.Series`2 [[System.DateTime, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089] 注册转换器,

我还尝试了以下示例:

let rnd = Random()
let ts = 
  [ for i in 0.0 .. 100.0 -> 
      DateTime.Today.AddHours(i), rnd.NextDouble() ] 
  |> series
R.as_zoo(ts)

导致相同类型的错误:

System.Exception:没有为类型 Deedle.Series`2[[System.DateTime, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Double, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] 或其任何基本类型

我的最终目标是绘制 Deedle 框架,并DateTime使用 R 作为行键。

4

1 回答 1

3

我认为 FsLab 中的安装脚本中存在错误 - 请检查文件Deedle.dllDeedle.RProvider.Plugin.dll(隐藏在packages文件夹中的某处)是否已复制到所在目录RProvider.dll(即packages\RProvider.1.0.5\lib)。

如果不是,复制那里的文件是否可以解决问题?(假设文件不存在并将它们复制到目录即可解决问题,这看起来像是我们 FsLab 安装脚本中的一个错误。)

于 2013-12-07T21:47:24.117 回答