栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何从带有向量列的DataFrame创建张量流数据集?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何从带有向量列的DataFrame创建张量流数据集?

TF可以从一个数据帧自动创建张量,只要它只有一种数据类型,在这种情况下,它似乎具有不同的数据类型。

没有

literal_eval
代码似乎可以正常工作,因为每个功能都是字符串,而不是混合类型:

train = pd.read_csv("train.csv", names=CSV_COLUMN_NAMES, header=0, delimiter=",")Features,labels = train,train.pop('type')dataset = tf.data.Dataset.from_tensor_slices((dict(Features), labels))iterator = dataset.make_initializable_iterator()next_element = iterator.get_next()with tf.Session() as sess:  sess.run(iterator.initializer)  print(sess.run(next_element))  print(sess.run(next_element))

输出:

({'y': b'[2, 3, 4]', 'x': b'[1, 2, 3]'}, b'A')({'y': b'[0, 1, 2]', 'x': b'[2, 7, 9]'}, b'B')

基于此解决方案:(如何将具有对象dtype的Numpy
2D数组转换为浮点数的常规2D数组
)如果我们将混合对象类型转换为相同的对象(使用np.vstack),则可以正常工作。

train['x'] = train['x'].apply(literal_eval)train['y'] = train['y'].apply(literal_eval)Features,labels = train,train.pop('type')dataset = tf.data.Dataset.from_tensor_slices(((np.vstack(Features['x']),    np.vstack(Features['y'])), labels))iterator = dataset.make_initializable_iterator()next_element = iterator.get_next()with tf.Session() as sess:   sess.run(iterator.initializer)   print(sess.run(next_element))   print(sess.run(next_element))

输出:

((array([1, 2, 3]), array([2, 3, 4])), b'A')((array([2, 7, 9]), array([0, 1, 2])), b'B')


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/441242.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号