python - 如何将“tensor([13., 16.])”之类的字符串转换为张量
问题描述
我从文件 txt 中读取了一个数据,其中包含有关位置的信息,如下所示:“... Location: tensor([13., 16.]) Location: tensor([11., 1.]) ...”我的问题是如何将其转换为实张量以制作绘图。我正在读取这样的数据:
for line in file:
M_l = re.search(r"Location: (.*)", line)
location = M_l.group(1)
plt.plot(location, 'r+')
解决方案
试试下面的代码片段。您必须提取与您的张量相对应的实际列表(在括号之间),这些列表是string
格式的。因此,使用 . 将此字符串列表转换为 python 列表ast
。然后用于tf.convert_to_tensor
转换为张量(仅在必要时?)。如果您确实想转换为张量,那么您必须在会话中运行张量并获取值和绘图。如果您不需要生成张量,您可以只绘制列表而不使用 tensorflow 会话。
import tensorflow as tf
import re
import ast
file = open("test.txt","r")
for line in file:
M_l = re.search(r"Location: (.*)", line)
location = M_l.group(1)
location=ast.literal_eval(re.search('\(([^)]+)', location).group(1))
l=tf.convert_to_tensor(location, dtype=tf.float32)
with tf.Session() as sess:
plt.plot(sess.run(l), 'r+')
推荐阅读
- javascript - 每次父母更新时都会调用 ReactJS 组件 useEffect 挂钩
- pkcs#11 - 如何读取软键
- android - 配套设备配对:扫描停止需要多长时间?
- c# - 如何基于类上的泛型类型在泛型方法上约束类型
- python - Django 视图未在数据库中创建记录
- python - Pyspark 3.1.1 使用 kafka 直接流式传输?
- javascript - 如何从数组中推送标准变量以根据特定日期计算预订日?
- aeron - 是否可以从 Aeron Cluster 重播?
- python - Python 测试和导入 - 导入错误
- java - 如何将共享首选项中的令牌添加到拦截器