我不是一个数学精灵,所以我的问题很难定义。我有一个浮点值,它与三个整数相关。这是一个例子:
0.5 = { 1000, 984, 880 }
6 = { 1000, 949, 664 }
10 = { 999, 976, 801 }
现在让我说我有三个新值,如900,920,752。我如何在这些记录之间进行插值并找到值,例如“4.53413424”?
感谢您阅读和所有评论。
答案 0 :(得分:0)
您可能(或许)将您的初始数据视为将三元组(或3D点)映射到数字的线性函数的定义。以下是如何继续:
让M
为其列为您所拥有的三元组的矩阵
[1000 1000 999
984 949 976
880 664 801]
让invM
成为M
的倒数。在这种情况下:
[112085/1218744 -1912/16927 27949/1218744
8837/152343 -1085/16927 877/152343
-22718/152343 3000/16927 -4375/152343]
现在计算产品[0.5 6 10]
次invM
。结果是三元组:
[-891481/812496 22534/16927 -195953/812496]
最后,对于每个三重(x, y, z)
计算它映射到的值
-891481/812496 * x + 22534/16927 * y -195953/812496 * z
这是您要查找的号码(在数据的线性扩展下)