基本矩阵运算
这个例子展示了在Engee中处理矩阵的基本方法和函数。
矩阵的基本操作
首先,让我们定义一个由9个元素组成的向量。
In [ ]:
Pkg.add(["LinearAlgebra"])
In [ ]:
a = [1 2 3 4 6 4 3 9 10]
Out[0]:
将每个元素的值增加2,并将结果保存在新向量中。 在Julia语言中,这是使用运算符完成的 .+.
In [ ]:
b = a .+ 2
Out[0]:
让我们绘制结果矢量b行。为了可视化,您需要连接这些图。jl库。 和函数的输入 plot() 提交列向量。 为此,我们使用运算符转置b '.
In [ ]:
c = b'
Out[0]:
In [ ]:
using Plots
plot(c)
Out[0]:
我们也可以制作不同类型的图表。 例如,让我们将矢量c的值显示为图。 为此,您必须首先调用该函数 plotlyjs().
In [ ]:
plotlyjs()
bar(c, xlabel="месяц",ylabel="количество")
Out[0]:
要创建矩形矩阵,您需要指定通过的行 ;.
In [ ]:
A = [1 2 0; 2 5 -1; 4 10 -1]
Out[0]:
我们转置矩阵并将结果写入另一个变量,例如B.将矩阵A与所得矩阵B相乘。
In [ ]:
B = A'
Out[0]:
In [ ]:
C = A * B
Out[0]:
但是我们也可以将矩阵A的每个元素乘以矩阵B的每个元素,就像我们之前对向量所做的那样。 也就是说,矩阵的乘法不会根据"每列行"规则发生,而是零碎的。
In [ ]:
D = A .* B
Out[0]:
让我们解决以下形式的简单方程
设置 列向量的形式。
In [ ]:
b = [1,3,5]
Out[0]:
In [ ]:
#Решение уравнения
x = A\b
Out[0]:
In [ ]:
#Покажем, что Ax=b
r = A*x - b
Out[0]:
线性代数部分的矩阵运算
图书馆 LinearAlgebra 允许您使用各种矩阵特性和矩阵计算。 例如,让我们找到矩阵a的特征值。 eigvals().
In [ ]:
using LinearAlgebra
eigvals(A)
Out[0]:
我们将通过将其作为输入值传递给函数来找到给定矩阵的行列式 det().
In [ ]:
M = [1 0; 2 2]
det(M)
Out[0]:
您还可以使用函数执行矩阵A的奇异分解 svd().
In [ ]:
svd(A)
Out[0]:
更多关于线性代数矩阵的操作可以在[线性代数]一节中找到(https://engee.com/helpcenter/stable/julia/stdlib/LinearAlgebra.html#LinearAlgebra.det )。