在 Numpy 中生成 Vandermonde 矩阵

numpyserver side programmingprogramming

要生成 Vandermonde 矩阵,请使用 Python Numpy 中的 np.ma.vander() 方法。Vandermonde 矩阵以 Alexandre-Théophile Vandermonde 命名,是一个每行都具有几何级数项的矩阵。

输出矩阵的列是输入向量的幂。幂的顺序由 increasing 布尔参数确定。具体而言,当 increasing 为 False 时,第 i 个输出列是输入向量按元素逐个提升到 N - i - 1 次方。这种每行都具有几何级数的矩阵以 Alexandre-Theophile Vandermonde 命名。

步骤

首先,导入所需的库 −

import numpy as np

使用 numpy.array() 方法创建一个包含 int 元素的数组 −

arr = np.array([93, 33, 76, 73, 88])
print("数组...
", arr)

创建一个掩码数组并将其中一些掩码为无效 −

maskArr = ma.masked_array(arr, mask =[0, 1, 0, 0, 1])
print("
我们的掩码数组...
", maskArr)

获取掩码数组的类型 −

print("
我们的掩码数组类型...
", maskArr.dtype)

获取掩码数组的维度 −

print("
我们的掩码数组维度...
",maskArr.ndim)

获取掩码数组的维度 −

print("
我们的掩码数组形状...
",maskArr.shape)

获取掩码数组的元素数量 −

print("
掩码数组中的元素数量...
",maskArr.size)

要生成范德蒙矩阵,请使用 Python Numpy 中的 np.ma.vander() 方法 −

print("
结果..
.", np.ma.vander(maskArr))

示例

import numpy as np
import numpy.ma as ma

# 使用 numpy.array() 方法创建一个包含 int 元素的数组
arr = np.array([93, 33, 76, 73, 88])
print("数组...
", arr) # 创建一个掩码数组,并将其中一些掩码为无效 maskArr = ma.masked_array(arr, mask =[0, 1, 0, 0, 1]) print("
我们的掩码数组...
", maskArr) # 获取掩码数组的类型 print("
我们的掩码数组类型...
", maskArr.dtype) # 获取掩码数组的维度 print("
我们的掩码数组维度...
",maskArr.ndim) # 获取掩码数组的形状 print("
我们的掩码数组形状...
",maskArr.shape) # 获取掩码数组的元素数量 print("
掩码数组中的元素数量...
",maskArr.size) # 要生成范德蒙矩阵,请使用 Python Numpy 中的 np.ma.vander() 方法 print("
结果..
.", np.ma.vander(maskArr))

输出

数组...
[93 33 76 73 88]

我们的屏蔽数组...
[93 -- 76 73 --]

我们的屏蔽数组类型...
int64

我们的屏蔽数组维度...
1

我们的屏蔽数组形状...
(5,)

屏蔽数组中的元素数量...
5

结果..
. [[74805201 804357 8649 93 1]
[ 0 0 0 0 0]
[33362176 438976 5776 76 1]
[28398241 389017 5329 73 1]
[ 0 0 0 0 0]]

相关文章