矩阵
这个矩阵有 2 行和 3 列:
C = |
|
矩阵的维数为(2x3)。
方阵
方阵是行数和列数相同的矩阵。
n×n 矩阵称为 n 阶方阵。
一个2×2矩阵(2阶方阵):
C = |
|
一个4×4矩阵(4阶方阵):
C = |
|
对角矩阵
Diagonal Matrix 在对角线条目上具有值,在其余部分为 零:
C = |
|
Advertisement -->
标量矩阵
A Scalar Matrix 具有相等的对角线元素,其余元素为 零:
C = |
|
身份矩阵
身份矩阵在对角线上有 1,在其余部分有 0。
这是1的矩阵等价物。符号是I。
I = |
|
如果将任何矩阵与单位矩阵相乘,则结果等于原始矩阵。
零矩阵
零矩阵(空矩阵)只有零。
C = |
|
等矩阵
如果每个元素都对应,则矩阵相等:
|
= |
|
负矩阵
矩阵的负很容易理解:
- |
|
= |
|
JavaScript 中的线性代数
在线性代数中,最简单的数学对象是标量:
const scalar = 1;另一个简单的数学对象是数组:
const array = [ 1, 2, 3 ];矩阵是二维数组:
const matrix = [ [1,2],[3,4],[5,6] ];向量可以写成只有一列的矩阵:
const vector = [ [1],[2],[3] ];向量也可以写成数组:
const vector = [ 1, 2, 3 ];JavaScript 矩阵运算
在 JavaScript 中编程矩阵运算,很容易成为循环的意大利面条。
使用 JavScript 库可以省去很多麻烦。
用于矩阵运算的最常用库之一称为 math.js。
只需一行代码即可添加到您的网页中:
使用 math.js
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjs/9.3.2/math.js"></script>添加矩阵
如果两个矩阵具有相同的维度,我们可以将它们相加:
|
+ |
|
= |
|
实例
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);const mB = math.matrix([[1,-1], [2,-2], [3,-3]]);
// Matrix Addition
const matrixAdd = math.add(mA, mB);
// Result [ [2, 1], [5, 2], [8, 3] ]
减法矩阵
如果两个矩阵的维数相同,我们可以将它们相减:
|
- |
|
= |
|
实例
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);const mB = math.matrix([[1,-1], [2,-2], [3,-3]]);
// Matrix Subtraction
const matrixSub = math.subtract(mA, mB);
// Result [ [0, 3], [1, 6], [2, 9] ]
要添加或减去矩阵,它们必须具有相同的维度。
标量乘法
虽然行和列中的数字称为矩阵,但单个数字称为标量。
矩阵与标量相乘很容易。 只需将矩阵中的每个数字与标量相乘即可:
|
x 2 = |
|
实例
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);// 矩阵乘法
const matrixMult = math.multiply(2, mA);
// Result [ [2, 4], [6, 8], [10, 12] ]
实例
const mA = math.matrix([[0, 2], [4, 6], [8, 10]]);// 矩阵除法
const matrixDiv = math.divide(mA, 2);
// Result [ [0, 1], [2, 3], [4, 5] ]
转置矩阵
转置矩阵,意思是用列替换行。
当你交换行和列时,你会围绕它的对角线旋转矩阵。
A = |
|
AT = |
|
乘法矩阵
矩阵相乘比较困难。
如果矩阵 A 的行数与矩阵 B 的列数相同,我们只能将两个矩阵相乘。
然后,我们需要编译一个"点积":
我们需要将A的每一行中的数字乘以B的每一列中的数字,然后相加:
实例
const mA = math.matrix([[1, 2, 3]]);const mB = math.matrix([[1, 2, 3], [1, 2, 3], [1, 2, 3]]);
// 矩阵乘法
const matrixMult = math.multiply(mA, mB);
// Result [ [6, 12, 18] ]
Explained:
A | B | C | C | |||||||||||||||||||||
|
x |
|
= |
|
= |
|
如果您知道如何将矩阵相乘,则可以求解许多复杂的方程。
示例
你卖玫瑰。
- 红玫瑰每支 3 美元
- 白玫瑰每朵 4 美元
- 黄玫瑰每朵 2 美元
- 星期一你卖出了 260 朵玫瑰
- 星期二你卖出了 200 朵玫瑰
- 星期三你卖出了 120 朵玫瑰
所有销售的价值是多少?
![]() |
![]() |
![]() |
|
Mon | 120 | 80 | 60 |
Tue | 90 | 70 | 40 |
Wed | 60 | 40 | 20 |
A | B | C | C | |||||||||||||||||||
|
x |
|
= |
|
= |
|
实例
const mA = math.matrix([[3, 4, 2]]);const mB = math.matrix([[120, 90, 60], [80, 70, 40], [60, 40, 20]);
// 矩阵乘法
const matrixMult = math.multiply(mA, mB);
// Result [ [800, 630, 380] ]
解释:
A | B | C | C | |||||||||||||||||||||
|
x |
|
= |
|
= |
|
矩阵分解
使用 AI,您需要知道如何分解矩阵。
矩阵分解是线性代数中的关键工具,尤其是在线性最小二乘法中。