目标
给定一组点,我试图找到满足所提供的所有点的线性方程的系数.
例如,如果我想找到线性方程(ax + by + c = z):
3x + 2y + 2 = z
Run Code Online (Sandbox Code Playgroud)
我需要至少三个三维点:
(2, 2, 12)
(3, 4, 19)
(4, 5, 24)
Run Code Online (Sandbox Code Playgroud)
给定坐标(x,y,z)的足够点,我应该能够使用高斯消元法找到(a,b,c).
但是,我认为我在特殊情况下遇到了解决矩阵的问题.你可以在这里查看我在python实现的第一次尝试:https://gist.github.com/anonymous/8188272
我们来看几个例子......
数据集1
使用以下"手工制作"点(x,y,z):
(2, 2, 12)
(3, 4, 19)
(4, 5, 24)
Run Code Online (Sandbox Code Playgroud)
对以下矩阵执行LU分解:
[[ 2. 2. 1. 12.]
[ 3. 4. 1. 19.]
[ 4. 5. 1. 24.]]
Run Code Online (Sandbox Code Playgroud)
返回解决U矩阵:
[[ 4. 5. 1. 24. ]
[ 0. -0.5 0.5 0. ]
[ 0. 0. 0.5 1. ]]
Run Code Online (Sandbox Code Playgroud)
返回的结果(a,b,c):
[3.0, …Run Code Online (Sandbox Code Playgroud)