假设我有一个TensorA和一个值vals的容器。有没有一个简洁的方法来返回一个与A形状相同的布尔Tensor,其中每个元素是A的元素是否包含在vals中?例如:第一个
A
vals
pw9qyyiw1#
您可以使用for循环来实现这一点:
sum(A==i for i in B).bool()
wfveoks02#
你可以简单地这样做:
result = A.apply_(lambda x: x in vals).bool()
那么result将包含这个Tensor:
result
tensor([[ True, False, False], [False, True, False]])
在这里,我只是使用了一个lambda函数和apply_ method,您可以在official documentation中找到它们。
csbfibhn3#
[list(map(lambda x: x in vals, thelist)) for thelist in A]
dldeef674#
用torch.isin方法是最方便的方法,简单如下:torch.isin(A, vals)个
torch.isin
torch.isin(A, vals)
4条答案
按热度按时间pw9qyyiw1#
您可以使用for循环来实现这一点:
wfveoks02#
你可以简单地这样做:
那么
result
将包含这个Tensor:在这里,我只是使用了一个lambda函数和apply_ method,您可以在official documentation中找到它们。
csbfibhn3#
dldeef674#
用
torch.isin
方法是最方便的方法,简单如下:torch.isin(A, vals)
个