使用 1D 矩阵索引 2D 矩阵



我有一个名为matrix1的值的二维矩阵,如下所示:

col1     col2    col3
1         1        0
2         1        2

我有一个名为 arr1 的一维值矩阵,如下所示:

col1
10
20
30

我想使用此 2D 矩阵中的值来索引 1D 矩阵中的值,在此过程中创建新的 2D 矩阵。

new_col1      new_col2      new_col3
  20            20             10
  30            20             30

实际阵列的形状为 (512,1( 和矩阵形状 (65672, 720(。我尝试使用 arr1[matrix1],但最终出现内存错误。

一个 Python3 解决方案:

import numpy as np
x = np.array([[1, 1, 0], [2, 1, 2]])
y = np.array([10, 20, 30])
y[x]

输出:

array([[20, 20, 10],
       [30, 20, 30]])
所以我

注意到我使用的是 32 位 python 解释器而不是 64 位 python 解释器(我在 pycharm 中使用虚拟环境(将 python 解释器更改为 64 位修复了此内存错误。

最新更新