F#中的数组连接

pro*_*rth 0 f# mathnet-numerics math.net

在F#中有没有类似 Matlab的horzcat()和vertcat()函数?因为我现在正在做的事情看起来像asinine.这里有一个相关的问题,但似乎过时了.

    let arr = Array.init 5 (fun i -> 1.)
    let xMat = DenseMatrix.init l 2 (fun r c -> if c = 0 then 1. else arr.[r])
Run Code Online (Sandbox Code Playgroud)

谢谢.

[编辑]有一个Array.concat但它似乎只能垂直工作.

Tom*_*cek 5

据我所知,没有内置函数可以为F#数组执行此操作,但在您的代码中,您最终使用来自Math.NET的矩阵 Numerics和Math.NET具有垂直和水平附加矩阵的函数:

let m1 = DenseMatrix.init 5 1 (fun _ _ -> 1.)
let m2 = DenseMatrix.init 5 1 (fun _ _ -> 2.)

DenseMatrix.append [m1; m2] // Append matrices horizontally
DenseMatrix.stack [m1; m2]  // Append matrices vertically
Run Code Online (Sandbox Code Playgroud)