在搜索了一个小时之后,我被困在了这个小问题上。我想把代码中的矩阵存储在.yaml文件中。
以下是从我的代码中得到的内容:
Matrix
[[ 1.00665266e+03 0.00000000e+00 5.08285432e+02]
[ 0.00000000e+00 1.01086937e+03 3.45995536e+02]
[ 0.00000000e+00 0.00000000e+00 1.00000000e+00]]
我尝试保存这个矩阵(在我的代码中,mtx
是缩写名称)
fname = "calibrationC300.yaml"
data = dict(
Matrix = mtx,
)
with open(fname, "w") as f:
yaml.dump(data, f, default_flow_style=False)
但是我在我的YAML文件中读到的内容完全是错误的(只是坏的转换?)
Matrix: !!python/object/apply:numpy.core.multiarray._reconstruct
args:
- &id001 !!python/name:numpy.ndarray ''
- !!python/tuple [0]
- b
state: !!python/tuple
- 1
- !!python/tuple [3, 3]
- !!python/object/apply:numpy.dtype
args: [f8, 0, 1]
state: !!python/tuple [3, <, null, null, null, -1, -1, 0]
- false
- !!binary |
cWM87e1YkEAAAAAAAAAAAIUEEyb5SH1AAAAAAAAAAACp/Z3yc2qQQFv0vPqb5nZAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAPA/
这是我第一次使用Yaml文件,我做错了什么吗? 在Yaml文件中有没有一种方法可以获取以简单形式(与代码获得的方式相同)表示的矩阵? 谢谢您提前。