【发布时间】:2019-07-31 23:24:47
【问题描述】:
我已经构建了一个带有 2 列“数据”和“标签”的熊猫数据框。密集矩阵中的“数据”列和“标签”是整数类型。
data object
label int64
我的数据帧中的示例数据
data label
0 [[[[[0 0 5 4 5]]]], [[[[0 0 5 1 4]]]], [[[[5 5... 0
1 [[[[[0 0 4 4 1]]]], [[[[0 0 3 3 1]]]], [[[[4 3... 0
2 [[[[[0 0 4 1 2]]]], [[[[0 0 2 3 4]]]], [[[[4 2... 0
3 [[[[[0 0 1 2 5]]]], [[[[0 0 3 2 3]]]], [[[[1 3... 0
4 [[[[[0 0 2 5 5]]]], [[[[0 0 3 4 1]]]], [[[[2 3... 0
当我尝试将 Dataframe 转换为 Tensorflow 数据集时,它给了我一个错误。我提取的标签和数据如下
target = df.pop('label')
dataset = tf.data.Dataset.from_tensor_slices((df.values, target.values))
这给了我以下错误。
TypeError: Expected binary or unicode string, got matrix([[0, 5, 1, 4, 4],
[5, 0, 5, 2, 4],
[1, 5, 0, 0, 0],
[4, 2, 0, 0, 0],
[4, 4, 0, 0, 0]], dtype=int32)
如何将我的“数据”列转换为 TensorFlow 数据集?
【问题讨论】:
-
您可以发布数据框的摘录吗?我很困惑你怎么能在熊猫数据框的一列中有一个矩阵。
-
@gorjan 我已经从我的数据框中更新了样本。请看一下
-
可以
print(df.values.shape)吗? -
@gorjan,它的''(9, 2)''。
-
也许你需要
tf.data.Dataset.from_generator。可以参考Creating a tensorflow dataset that outputs a dict。
标签: python-3.x pandas tensorflow