首页 > 解决方案 > 如何将元数据存储在 yaml 文件中?

问题描述

我目前正在使用 yaml 文件来存储与网格单元格或地图元数据相关的元数据。所以想法是存储单元格id(基本上地图是网格单元格的形式,其中单元格参数代表地图参数。我已经通过以下代码完成了存储单元格参数的基本形式。下面描述其输出编码 :

metaFile = {'CellID': f'{str(i)},{str(j)}', 'Mean': f'{meanXY}','CovarianceMat': f'{covMat3}' }
    print(self.mapfileName)
    with open(self.mapfileName, 'a+') as mapFile:
        dumpedData = yaml.dump(metaFile, mapFile)
    mapFile.close()

输出:

CellID: 1,1
CovarianceMat: "[[-1.03214286 -0.98928571]\n [-0.975      -1.00833333]]"
Mean: '[-0.275 -0.175]'
CellID: 1,2
CovarianceMat: "[[-1.1125 -0.8875]\n [-1.1125 -0.8875]]"
Mean: '[-0.175  0.175]'
CellID: 2,2
CovarianceMat: "[[-0.05 -0.05]\n [-0.05 -0.05]]"
Mean: '[0.2 0.2]'
CellID: 3,3
CovarianceMat: "[[-1. -1.]\n [-1. -1.]]"
Mean: '[0.75 0.75]'

但我要求输出存储如下:

Cell1: 
        id : 1,1
        CovarianceMat: "[[-1.03214286 -0.98928571]\n [-0.975      -1.00833333]]"
        Mean: '[-0.275 -0.175]'
Cell2: 
        id : 1,2
        CovarianceMat: "[[-1.1125 -0.8875]\n [-1.1125 -0.8875]]"
        Mean: '[-0.175  0.175]'
Cell3: 
        id : 2,2
        CovarianceMat: "[[-0.05 -0.05]\n [-0.05 -0.05]]"
        Mean: '[0.2 0.2]'
Cell4: 
        id : 3,3
        CovarianceMat: "[[-1. -1.]\n [-1. -1.]]"
        Mean: '[0.75 0.75]'

关于如何实现它的任何想法?

标签: python-3.xyamldata-science

解决方案


推荐阅读