numpy 与 matlab 中的数组操作

array operations in numpy vs matlab

我有一个 Matlab 代码,我必须将其转换为 python。我目前正在努力进行一项操作。我有一个尺寸为 262144 x 24 的 Matlab 数组“edof”。我有第二个数组“dofVector”,尺寸为 823875 x 1。执行的操作是:

edof = dofVector(edof);

这会更新我的变量,我得到的变量“edof”的结果尺寸与以前相同,即 262144 x 24,但值已更改。

我正在尝试在 numpy 中转换这行代码,但无法这样做。

edof = dofVector[edof]

我收到以下错误。

有人可以帮我吗?

我在这里不包括数组的描述,因为这是高度技术性的并且特定于我的领域。

谢谢!

Numpy 索引是从零开始的。 MATLAB 索引以一为基础。因此,如果 MATLAB 和 Python 之间的 edof 在这一步之前是相同的,那么您需要执行

edof = dofVector[edof - 1]