小编use*_*971的帖子

Python线性方程 - 高斯消元法

目标

给定一组点,我试图找到满足所提供的所有点的线性方程的系数.

例如,如果我想找到线性方程(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)

python numpy matrix linear-algebra scipy

4
推荐指数
1
解决办法
5207
查看次数

标签 统计

linear-algebra ×1

matrix ×1

numpy ×1

python ×1

scipy ×1