我有(32x750)
张量
tensor([[ 0.0000, 0.0000, 0.0000, ..., 0.0000, 0.0000, 0.0043],
[ 0.0000, 0.0000, 0.0000, ..., 0.0000, 0.0000, 0.0043],
[ 0.0000, 0.0044, 0.0000, ..., 0.0044, 0.0000, 0.0000],
...,
[ 0.0059, 0.0000, 0.0059, ..., 0.0059, 0.0000, 0.0000],
[ 0.0059, 0.0000, 0.0059, ..., 0.0059, 0.0000, 0.0000],
[ 0.0000, 0.0000, 0.0000, ..., 0.0000, 0.0056, 0.0000]], device='cuda:0')
我想获得每行的非零元素数量。这样的事情[12 47 0 5 .... 8 7 50]
此discussion和this无法解决我的问题并关注1-D tensor.
的非零元素数量
由于
答案 0 :(得分:2)
使用此post解决了问题
我使用了:750 - (tensor == 0).sum(dim=1)
答案 1 :(得分:0)
list_of_num_nonzero_in_each_row = []
for row in my tensor:
list_of_num_nonzero_in_each_row.append(sum(row == 0.0).item())