【发布时间】:2021-10-30 20:20:48
【问题描述】:
我有一个张量格式的文本 (.txt) 文件,如下所示:
[tensor([[5.7744e+02, 1.7730e+02, 6.2396e+02, 2.1678e+02, 9.9988e-01],
[5.8410e+02, 1.7532e+02, 6.2769e+02, 2.1083e+02, 9.9969e-01],
[6.4279e+02, 1.7254e+02, 6.7784e+02, 2.0478e+02, 9.9957e-01],
[6.9179e+02, 1.6719e+02, 8.2207e+02, 2.6694e+02, 9.9954e-01],
[1.0050e+03, 2.9167e+02, 1.0792e+03, 3.7500e+02, 5.7740e-05]],
device='cuda:0')]
[tensor([[7.6615e+02, 1.7577e+02, 8.2579e+02, 2.0013e+02, 9.9981e-01],
[7.7214e+02, 1.7320e+02, 8.3133e+02, 1.9800e+02, 9.9901e-01],
[6.3909e+02, 1.7303e+02, 6.6037e+02, 1.8797e+02, 9.9790e-01],
[7.6184e+02, 1.7468e+02, 8.3014e+02, 2.0274e+02, 9.9395e-01],
[6.9179e+02, 1.6719e+02, 8.2207e+02, 2.6694e+02, 9.9954e-01],
[1.0050e+03, 2.9167e+02, 1.0792e+03, 3.7500e+02, 5.7740e-05]],
device='cuda:0')]
如何将每个张量写入新的 (.txt) 文件。例如我想要:
[tensor([[5.7744e+02, 1.7730e+02, 6.2396e+02, 2.1678e+02, 9.9988e-01],
[5.8410e+02, 1.7532e+02, 6.2769e+02, 2.1083e+02, 9.9969e-01],
[6.4279e+02, 1.7254e+02, 6.7784e+02, 2.0478e+02, 9.9957e-01],
[6.9179e+02, 1.6719e+02, 8.2207e+02, 2.6694e+02, 9.9954e-01],
[1.0050e+03, 2.9167e+02, 1.0792e+03, 3.7500e+02, 5.7740e-05]],
device='cuda:0')]
文件 one.txt 中的这个张量 和 two.txt 的另一个张量等等。
【问题讨论】:
-
你能打开文件,然后循环播放,看
"[tensor"吗? -
第一个正确的问题并正确格式化您的数据
-
张量之间似乎有空行 - 所以也许你应该将它作为文本文件读取并使用这个空行拆分它 - 这意味着两个新行
text.split("\n\n")- 然后你应该有列表分隔字符串中的张量。 -
我刚刚更正了格式,张量之间没有空行