我需要使用F#执行一些基本的OLS回归。要做到这一点,我需要一些线性代数函数,但我很困惑那里有什么。我找不到任何方法来反转矩阵。有一些名为Microsoft.FSharp.Math.LinearAlgebra
的库的文档,但我不知道它是否存在。
答案 0 :(得分:6)
如果将FSharp Powerpack添加到项目中(在.NET参考中),则可以使用矩阵库的各种功能
编辑:你还需要添加实验库Fsharp.Powerpack.MathProviders,然后你可以调用如下
open Microsoft.FSharp.Math
let m = Matrix.create 10 10 1.2
let m2 = Experimental.LinearAlgebra.Inverse m
答案 1 :(得分:1)
FlyingFrog执行Numerics库,其中包含许多其他函数中的Matrix反转。
不确定哪个是优选的,或者来自PowerPack的(显然已弃用的)'实验'代码。我想你总是可以将PowerPack版本的托管位的源代码保存在一个安全的地方,仍然可以在这里找到:
C:\Program Files\FSharp-1.9.6.2\source\fsharp\FSharp.PowerPack\math\lapack\linear_algebra_managed.fs.
答案 2 :(得分:0)
我不知道;在F#的1.9.6版本中,我没有看到任何内容,文档在这里
http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/namespaces.html
并且在FSharp.Powerpack.dll中的Microsoft.FSharp.Math命名空间中有Matrix内容,但是我没有看到'反转',我不知道'LinearAlgebra'的东西(不推荐使用?)网络搜索表明它在几个版本中消失了。)
答案 3 :(得分:0)
你签出了this吗?这可能有所帮助。