【发布时间】:2020-10-01 14:23:33
【问题描述】:
是否有一种简单的方法可以从 tensorflow.data.Dataset 实例中过滤所有包含 nan 值的条目?喜欢 Pandas 中的dropna 方法?
简短示例:
import numpy as np
import tensorflow as tf
X = tf.data.Dataset.from_tensor_slices([[1,2,3], [0,0,0], [np.nan,np.nan,np.nan], [3,4,5], [np.nan,3,4]])
y = tf.data.Dataset.from_tensor_slices([np.nan, 0, 1, 2, 3])
ds = tf.data.Dataset.zip((X,y))
ds = foo(ds) # foo(x) = ?
for x in iter(ds): print(str(x))
foo(x) 可以使用什么来获得以下输出:
(<tf.Tensor: shape=(3,), dtype=float32, numpy=array([0., 0., 0.], dtype=float32)>, <tf.Tensor: shape=(), dtype=float32, numpy=0.0>)
(<tf.Tensor: shape=(3,), dtype=float32, numpy=array([3., 4., 5.], dtype=float32)>, <tf.Tensor: shape=(), dtype=float32, numpy=2.0>)
如果你想亲自尝试,here is Google Colab notebook。
【问题讨论】:
标签: python tensorflow tensorflow2.0 tensorflow-datasets