How can I take the opposite of gather


The Gather method gathers values along an axis specified by dim. I would like to take the output, so the part that is discarded then the values by chosen indexes. How should I do this?


I am not 100% sure I understand what you attempt to do, but would scattering a bool tensor True to the indices and then taking the complement (using the ~ unary operator) and applying this as a mask in advanced indexing work?

inp = torch.arange(25.).view(5, 5)
idx = torch.randint(4, (5, 1)) + torch.tensor([0, 1])
res = inp[~torch.zeros(inp.shape,dtype=torch.bool).scatter_(1, idx, torch.tensor(True).expand(idx.shape))].view(inp.size(0), inp.size(1) - idx.size(1))


Best regards


Thank you very much, this is the solution I needed.