如何在numpy.array中列更改值时选择第一行

时间:2014-03-26 10:47:11

标签: python numpy

有没有一个很好的快速方法为numpy数组做以下选择?

>>> A=np.array([[1,2], [2,2], [3,5], [4,5]])
>>> A
array([[1, 2],
       [2, 2],
       [3, 5],
       [4, 5]])

我想在第二列更改值时选择第一行。对于上面的数组,结果将是:

array([[1, 2], 
       [3, 5]])

1 个答案:

答案 0 :(得分:2)

>>> xs = np.array([[1,2], [2,2], [3,5], [4,5]])
>>> j = scipy.r_[True, xs[:-1,1] != xs[1:,1]]  # or np.concatenate here
>>> xs[j,:]
array([[1, 2],
       [3, 5]])