问题标签 [fslab]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
120 浏览

f# - FsLab 期刊模板的编译错误

我刚刚从 fslab.org 下载了 FSlab 期刊模板。当我尝试运行 tutorial.fsx 时,我在 build.fsx 中遇到了一些错误。这些错误似乎特定于 suave 库。第一个问题是“打开 Suave.HTTP.Files”,显然没有 Files 命名空间。其次,该脚本使用了无法找到的 UTF8 数据类型。第三,该脚本还使用了找不到的 Applicatives 类型。

当我在 github 上查看 Suave 时,我发现 Suave.HTTP.Files 命名空间已被弃用,取而代之的是 Suave.Files,但是当我添加该命名空间时,它并没有解决任何问题。

我正在使用 paket 来提取所有依赖项的最新版本。我正在使用 VS 2013。

我缺少 FsLab 日记模板中的某些步骤吗?最新版的 Suave 是否不再兼容 FsLab?

0 投票
2 回答
103 浏览

f# - F# Deedle GetSlice() 错误“预计具有类型 DateTime 选项”

尝试使用 GetSlice() 方法时出现错误。

错误是:此表达式应具有 DateTime 类型选项,但此处具有 DateTime 类型。上述代码中的两个参数(DateTime(2014,12,28,20,0,0)DateTime(2014,12,28,23,0,0) )都会出现此错误

有人可以解释“日期时间选项”类型与“日期时间”类型之间的区别吗?用于上述代码的正确语法是什么?

FsLab 版本(0.3.17)

0 投票
1 回答
263 浏览

f# - F# deedle Series 如何获取用于 XPlot 的 Key 和 Series 的名称

我正在使用 XPlot 绘制表格类型的图表。如果我没有指定 Chart.WithLables 那么表格使用 Column1 和 Column2 作为标题。我的系列是从一个 DataFrame 创建的(索引在 Column 上,标题名称为:Date,并且有一个标题名称为 Close 的 Column。这是从数据框中获取系列的代码:

因为我知道图表中的第一列:表是系列键,第二列是系列的值。我可以将 Chart.WithLabels 硬编码为

我正在寻找一种方法来提取键的名称(日期)和值的名称(关闭)。对于我可以使用的数据框

获取列标题。我找不到系列的任何等价物。我想编写 Chart.WithLabels 之类的代码

0 投票
1 回答
589 浏览

f# - 如何迭代 Deedle 系列>

我使用创建了一个数据框

结果输出: Open High Low Close Volume 12/28/2014 8:00:00 PM -> 62.13 62.67 62.13 62.27 3206
12/28/2014 9:00:00 PM -> 62.27 62.42 62.14 62.39 1620
12/28/ 2014 10:00:00 PM -> 62.4 62.41 62.16 62.21 1275
12/28/2014 11:00:00 PM -> 62.21 62.32 61.96 62.19 2791
12/29/2014 12:00:00 AM -> 62.17 62.25 62.08 62.23 1233
2014 年 12 月 29 日上午 1:00:00 -> 62.23 62.41 62.21 62.31 1186
2014 年 12 月 29 日上午 2:00:00 -> 62.32 62.32 62.07 62.21 1446 2014 年
12 月 29 日上午 3:022:00 -> 6。 62.35 62.17 62.28 1335

我现在想从上述每小时样本中生成更高的时间范围(每天)。

我开始:

返回: Series<DateTime,Series<DateTime,ObjectSeries<string>>>.

我想创建一个新的 DataFrame,其中包含 Date(key)、Open、High、Low、Close 和 Volume 列。打开是该系列第 1 行中的第一个打开。High 是该系列中的 Max High。低是该系列中的最低低。Close 是该系列中的最后一个 Close。Volume 是系列中 Volume 的总和

所以像:

与其尝试使用 Rows 在 Frame 级别执行此操作,不如尝试使用 Columns 使用 Frame 执行此操作会更好吗?

更新这是完成的代码:

我无法使用:

因为这给了我一条错误消息:这个表达式应该有浮点类型选项,但这里有浮点类型。我不得不包装函数 Some()。不知道为什么 Stats.sum 需要这个,但 Stat.max 和 Stats.min 不需要。

0 投票
1 回答
91 浏览

f# - F# Deedle 返回奇怪的输出

当我在行帧上使用 FirstKey 和 LastKey 时,我从 Deedle 得到一个奇怪的输出。cl 在以下示例中是一个 DataFrame。

返回: val it : (unit -> DateTime) =<fun:it@156-43>在 FSI 窗口中。

返回: val it : (unit -> DateTime) =<fun:it@157-44>在 FSI 窗口中。

我期待 DateTime 的关键值。有人认识输出吗?我是否必须进行某种进一步处理才能获得有用的输出?

更新。我编辑了问题,现在可以看到 FSI 窗口的完整输出。

0 投票
1 回答
176 浏览

wordpress - 将 FSLab XPlot 图形部署到 Web

我有兴趣将使用 FSLabs XPlot 包装器围绕 plot.ly 和谷歌图表构建的交互式图形部署到 wordpress、xamarin 和良好的旧网络平台。我浏览了文档,它在演示图表功能方面做得非常出色,但并没有详细介绍如何集成到 wordpress 站点、xamarin 应用程序或带有 F# Web Api 后端的 Angular 应用程序。

关于此或 pointesr 的文档将无济于事!

谢谢,

0 投票
2 回答
175 浏览

f# - FSLab 模板项目运行时报错

FSLab 模板报错“类型提供者‘RProvider.RProvider’报错:类型提供者构造函数抛出异常:无法在 20 秒内启动 R.NET 服务器”

我正在使用来自 fslab.org 的 VS2015 和最新模板

任何人都知道如何解决这个错误?我在使用 VS2013 时遇到了同样的错误,所以我认为它与 VS 无关。

0 投票
1 回答
133 浏览

f# - 在 FSLAB 和编译的 exe 中使用 FSharp.Charting 绘制 Deedle 系列

使用 FSharp.Charting 绘制 Deedle DataFrame 或 Series 时,FSLAB 可以方便地重载各种 Chart 函数以直接使用 Series。所以我可以做Series(x,y) |> Chart.Column例子。但是在编译 Deedle 和 FSharp.Charting 时直接引用,并且需要将 Series 转换为 Series.observationsSeries(x,y) |> Series.observations |> Chart.Column

有没有办法避免Series.observations?还是我需要为所有不同的图表功能定义扩展方法?这是Plotting Deedle 框架中建议的内容

这是我在 FSI 或 .exe 中使用的代码:

0 投票
1 回答
135 浏览

f# - 根据最后一行的值按列对 Deedle Frame 进行排序

我需要根据最后一行的值对 Deedle 数据框的列进行排序。因此,第一列将具有最大值,最后一列将具有最后一行中的最小值。Deedle's Frame 的大部分功能都在行上。

下面是一些生成示例数据的代码,其中 Item2 的值最终会大于 Item1:

在这种情况下,Frame 的最后一行将如下所示,第二列中的值较大:
2016/05/14 0:00:00 -> 0.143158562780897 0.918480403450541

但我想按以下顺序排列:
2016/05/14 0:00:00 -> 0.918480403450541 0.143158562780897

我发布了一个答案,但想看看是否还有其他方法,因为我对 Deedle 还不太熟悉。

0 投票
2 回答
404 浏览

f# - 尝试加载示例文件时 CsvProvider 错误“字典中不存在给定键”的含义?

我无法使用 fslab 提供的 FSharp.Data csv 提供程序加载 csv 文件,包括示例 adwords.csv 文件。

下面这个错误是什么意思?此外,当我将鼠标悬停在 Visual Studio 编辑器中的代码上时,它提到“字典中不存在给定的键”

问题示例:

输出:

我自己的文件遇到了这个问题,所以我从这里获取了这个示例文件:https ://raw.githubusercontent.com/fsharp/FSharp.Data/master/tests/FSharp.Data.Tests/Data/Adwords.csv

调试信息:

  • 如果我删除 FSharp.Data 库文件夹(v 2.3.0)并替换为 2.2.5 版本,它可以正常工作,没有错误。
  • 如果我不使用 FsLab.fsx 脚本而是使用

    #I "packages/FSharp.Data/lib/net40 #r "FSharp.Data.dll" 然后一切正常。

  • FsLab.fsx 脚本的路径是正确的,它在我将行发送到 fsi 时运行。
  • F# 版本是 14.0.23413.0。
  • FSlab下载的FSharp.Data版本为FSharp.Data.2.3.0。
  • 我在 .fsx 脚本中没有其他引用。
  • 我正在使用 Visual Studio 社区版 14.0.24720.00 更新 1。
  • .NET 版本 4.6.01038
  • 我现在意识到我没有收到弹出窗口,询问我是否要允许 .dll,就像我以前使用它时那样。