【问题标题】:Remove one column for a numpy array删除 numpy 数组的一列
【发布时间】:2011-07-15 17:07:40
【问题描述】:

我有一个维度为 (48, 366, 3) 的 numpy 数组,我想从数组中删除最后一列以使其成为 (48, 365, 3)。最好的方法是什么? (所有条目都是整数。我使用的是 Python v2.6)

【问题讨论】:

    标签: python arrays numpy


    【解决方案1】:

    你可以试试numpy.delete:

    http://docs.scipy.org/doc/numpy/reference/generated/numpy.delete.html

    或者只是获取您想要的数组切片并将其写入新数组。

    例如:

    a = np.random.randint(0,2, size=(48,366,3))
    b = np.delete(a, np.s_[-1:], axis=1)
    print b.shape # <--- (48,365,3)
    

    或等效:

    b = np.delete(a, -1, axis=1)
    

    或:

    b = a[:,:-1,:]
    

    【讨论】:

      【解决方案2】:

      顺势而为:

      In []: A= rand(48, 366, 3)
      In []: A.shape
      Out[]: (48, 366, 3)
      
      In []: A= A[:, :-1, :]
      In []: A.shape
      Out[]: (48, 365, 3)
      

      【讨论】:

        猜你喜欢
        • 2011-03-10
        • 1970-01-01
        • 2016-06-06
        • 2020-01-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多