让tensor
成为len(tensor.get_shape()) == 2
的张量。
怎么做np.nansum(tensor, axis=1)
?从documentation,nansum
“返回给定轴上的数组元素之和,将非数字(NaN)视为零”。
我可以看到如何使用:
tf.reduce_sum(tf.where(tf.is_nan(tensor), tf.zeros_like(tensor), tensor), axis=1)
但这似乎过于复杂。有更好的方法吗?
答案 0 :(得分:0)
没有更好的方法。只需使用问题中包含的代码即可。
事实上,您可以使用tensor
替换tf.where
中的NaN:
tf.where(tf.is_nan(tensor), replacement_tensor, tensor)
当然,设置replacement_tensor = tf.zeros_like(tensor)
会用零替换NaN。