Bir dizilim var: input = np.array([[1,0,3,5,0,8,6]])
ve ben [1,3,5,8,6]
filtrelemek istiyorum.Bir tensörde sıfır olmayan değerleri filtrele
tf.where
'u bir koşulla kullanabildiğinizi biliyorum, ancak döndürülen değer hala içinde 0 bulunur. Aşağıdaki kod parçasının çıktısı [[[1 0 3 5 0 8 6]]]
'dur. Ayrıca, neden tf.where
'un neden x
ve y
gereksinimlerini anlamadığını da anlamıyorum.
Sonuçta elde edilen tensörde 0'lardan kurtulabilir miyim?
import numpy as np
import tensorflow as tf
input = np.array([[1,0,3,5,0,8,6]])
X = tf.placeholder(tf.int32,[None,7])
zeros = tf.zeros_like(X)
index = tf.not_equal(X,zeros)
loc = tf.where(index,x=X,y=X)
with tf.Session() as sess:
out = sess.run([loc],feed_dict={X:input})
print np.array(out)