7

我需要使用 F# 执行一些基本的 OLS 回归。为此,我需要一些线性代数函数,但我对那里有什么感到困惑。我找不到任何方法来反转矩阵。有一些名为 的库的文档Microsoft.FSharp.Math.LinearAlgebra,但我不知道它是否存在。

4

4 回答 4

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
于 2009-03-20T21:19:05.473 回答
1

FlyingFrog做了一个Numerics库,其中包含许多其他函数中的矩阵求逆。

不确定哪个更可取,或者 PowerPack 中的(显然已弃用)“实验性”代码。我想您可以始终将 PowerPack 版本的托管位的源代码保存在安全的地方,仍然可以在这里找到:

C:\Program Files\FSharp-1.9.6.2\source\fsharp\FSharp.PowerPack\math\lapack\linear_algebra_managed.fs.
于 2009-03-23T14:43:08.973 回答
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 的东西,但我没有看到“反转”,我不知道“线性代数”的东西(不推荐使用?网络搜索建议它消失了几个版本)。

于 2009-03-20T20:00:37.970 回答
0

你检查过这个。它可能会有所帮助。

于 2009-03-20T20:08:54.503 回答