【发布时间】:2018-04-19 03:15:12
【问题描述】:
我有一个包含多行/多列的矩阵。列数总是等于行数,但我不知道确切的数字,因为它们是另一个查询的结果。
这是一个有 2 列/行的简单示例
ID1 ID2
1 4 7
2 2 6
我从一个看起来像这样的表中得到这个矩阵:
ID1 ID2 Value
1 1 4
1 2 7
2 1 2
2 2 6
现在我想要那个矩阵的逆矩阵。
矩阵中的结果如下所示:
ID1 ID2
1 0.6 -0.7
2 -0.2 0.4
或者像这样在表格中:
ID1 ID2 Value
1 1 0.6
1 2 -0.7
2 1 -0.2
2 2 0.4
基本上就是 SQL Server 中的 Excel 公式 ={MINVERSE(Array)}
在我的数据库中,我同时拥有 Table 和 Matrix,因此我可以使用最适合的方法来找到它的倒数。
【问题讨论】:
-
我认为在 SQL 中这样做是个坏主意。使用您拥有的模式将其存储在数据库中似乎是合理的,但尝试在 RDBMS 中对其进行操作......这是一个延伸,因为您正在考虑数据本身中定义的关系。在旨在处理矩阵数据的程序中,在数据库之外执行此操作似乎更合适。
-
@JNevill 你认为你是什么软件来处理这样的大型矩阵(200X200)?我所做的工作基本上是金融工程、风险回报计算。
-
我不确定,因为我不经常使用矩阵数据。我想像 R 这样更适合分析和统计的语言将是一个很好的起点。 This tutorial 似乎暗示 R 会很合适。
标签: sql-server matrix