2014-03-26 51 views
1

是否有一个很好的快速方法来为numpy数组执行以下选择?如何在列更改numpy.array中的值时选择第一行

>>> 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]]) 

回答

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]]) 
相关问题