2

線形回帰関数を持たないプログラミング言語を使用しています。すでに単一の変数線形方程式を実装しています。

y = Ax + B

この Stack Overflow answerと同様のソリューションを使用して、データから A 係数と B 係数を単純に計算しました。

変数が追加されると、この問題が幾何学的に難しくなることはわかっていますが、私たちの目的のために、もう 1 つ追加するだけで済みます。

z = Ax + By + C

x、y、および z の配列を指定して、A、B、および C を解くことができる閉じた形式の方程式、または任意の言語のコードを持っている人はいますか?

4

3 に答える 3

6

したがって、3 つの線形方程式が得られます。

k = aX1 + bY1 + cZ1
k = aX2 + bY2 + cZ2
k = aX3 + bY3 + cZ3

あなたができることは、それをマトリズとして書き直すことです

| x1 y1 z1 | | a |   | k |
| x2 y2 z2 | | b | = | k |
| x3 y3 y3 | | c |   | k |

解決するに[a b c ]は、次の行列演算を行います

| a |              | x1 y1 z1 |     | k |
| b | =  inverse(  | x2 y2 z2 | )   | k |
| c |              | x3 y3 y3 |     | k |

3x3 逆行列の式は、ここで見つけることができます

于 2009-01-19T23:55:04.747 に答える
2

はい、ギル・ストラングのやり方で考えれば、これは簡単な線形代数の問題です。 ここに書面による説明があります。

于 2009-01-19T23:27:40.417 に答える
0

MatLab を使用できますか、それともソフトウェア内で計算を行う必要がありますか?

重回帰分析に関する MatLab の指示。

MatLab と C# の統合

于 2009-01-19T23:38:03.437 に答える