在F#中获取2D数组的列或行

时间:2012-07-11 10:37:09

标签: arrays f# multidimensional-array

如何在F#中获取2D数组的列或行(理想情况下为1D数组,但Seq也很好)。显然我可以自己写,但你会认为它必须已经提供......

E.g。我是内置的等价物:

let row i array = seq { for j in 0 .. (Array2D.length2 array)-1 do yield array.[i,j]}

1 个答案:

答案 0 :(得分:5)

我认为没有内置功能。<​​/ p>

您可以使用Seq.cast来切割数组并展平切片:

let row i (arr: 'T[,]) = arr.[i..i, *] |> Seq.cast<'T>