Hello,
l have a following 2d numpy array called coordinates. for instance
coordinates[:5]
[[86 11]
 [74  3]
 [90  9]
 [84  8]
 [98 88]]


l process coordinates in order to return an (x,y) vector as follow ; get min x then (min_x, look min y). From a list of (x_min,y) vectors we choose (x_min, y) where is y is min. To do so  in numpy  l did the following :
            coordinates=np.asarray(coordinates)
            xmin_value=np.min(coordinates[:,0])
            min_x_vectors = coordinates[np.where(coordinates[:, 0] == xmin_value)]
            minimum = np.argmin(min_x_vectors[:, 1])
            x0,y0=min_x_vectors[minimum]

My question how to do the same in pytorch  ?
     coordinates=coord_train.astype(np.int64)
     coordinates=torch.LongTensor(coord_train).type(dtypeLong)
     coordinates=Variable(coord_train, requires_grad=False) 

coordinates
Variable containing:
86 11
74  3
90  9
84  8
98 88
[torch.cuda.LongTensor of size 5x2 (GPU 0)]
l can retrieve the min as follow :
xmin_value=coordinates[:,0].min()
However l’m not sure how to deal with argmin and np.where in pytorch for :
          min_x_vectors = coordinates[np.where(coordinates[:, 0] == xmin_value)]
            minimum = np.argmin(min_x_vectors[:, 1])
            x0,y0=min_x_vectors[minimum]

Temporarily l did the following :
          coordinates=coordinates.cpu()
           coordinates=coordinates.data
           coordinates=coordinates.numpy()
           coordinates=np.asarray(coordinates)

Thank you