代码之家  ›  专栏  ›  技术社区  ›  NicoH

每个元素沿一个轴的numpy数组位置

  •  0
  • NicoH  · 技术社区  · 3 年前

    比如说,我有一个numpy 2D阵列

    a = np.arange(1,7).reshape(2,3)
    array([[1, 2, 3],
           [4, 5, 6]])
    

    我想要一个数组,每个元素在一个轴上的位置如下:

    array([[0, 1, 2],
           [0, 1, 2]])
    

    我需要这个来证明我的论点 matplotlib.pyplot 是的 bar3d . 有没有简单的方法可以做到这一点?

    0 回复  |  直到 3 年前
        1
  •  2
  •   Dani Mesejo    3 年前

    使用 np.tile :

    import numpy as np
    
    a = np.arange(1,7).reshape(2,3)
    
    n_rows, n_cols = a.shape
    res = np.tile(np.arange(n_cols), (n_rows, 1))
    print(res)
    

    输出

    [[0 1 2]
     [0 1 2]]