计算F#中序列的后续元素的差异

时间:2012-08-28 14:03:28

标签: f#

我在F#中有一系列浮点数,我需要得到一个由(Math.Log currentElement)/(Math.Log previousElement)定义的序列。显然,它将比原始序列短一个元素。

在F#中实现这一目标的最优雅方式是什么?我正在考虑使用带有for循环的seq {}表达式,但即便以相当不错的方式处理第一个元素似乎也很难...

2 个答案:

答案 0 :(得分:9)

items |> Seq.pairwise |> Seq.map (fun (x, y) -> log y / log x)

答案 1 :(得分:0)

或者如果您愿意:

let f (x, y) = (log y) / (log x)

let ans = s |> Seq.pairwise |> Seq.map f