从JSON列表创建嵌套字典

时间:2019-09-29 17:49:07

标签: python json dataframe dictionary

我需要一些家庭作业帮助。我需要使用Python字典从头开始创建一个新数据库,并从中提取值。原始数据以列表格式提供(请在原始数据列表下方找到)。

该列表包含3天的数据字段'asOf'(2019-01-01Z,2019-01-04Z,2019-01-05Z)。我需要提取的主要价值似乎嵌套在其他列表/字典中:

  1. 我需要提取所有字段及其对应的值并将其存储在'gc'中。 “ gc”内部有4个字典,每个字典之间的差异为'tnr'(5年,3年,7年,10年)

  2. 我需要提取所有字段及其对应值并将其存储在'avgliqtygc'中(例如'wklyntlntl','wklycntr'等). 'avgliqtygc' has 4 dictionaries inside which again differ by'tnr'`(5年,3年,7年,10Y)

  3. 创建一个函数,该函数为特定的'tnr'(5Y,3Y,7Y,10Y)和'gc'内部的特定字段创建TimeSeries(在这种情况下为3天)例如(例如“ convspr”,“ theopx”,“ rbpv01”,“ r01”等)。

您认为创建此数据库的最佳方法是什么?我正在考虑一个带有4个嵌套字典的字典(每个“ tnr”都有1个)。但是,以这种方式,我不知道如何在每个嵌套字典中附加数据的每个日期(2019-01-01Z,2019-01-04Z,2019-01-05Z)。

非常感谢

list = [{
        'rd': 'AAABBB',
        'tkr': 'it_x-x',
        'asOf': '2019-01-01Z',
        'srs': 32,
        'vsn': 1,
        'onTher': False,
        'rlltkr': 'it_x-x',
        'gc': [{
                'tnr': '5Y',
                'tnrValue': 5.0,
                'px': 1.75656423,
                'convspr': 0.01258446,
                'end_date': '2024-12-20Z',
                'theopx': 1.75215454,
                'theospr': 0.003255484,
                'dpth': 12,
                'dp': 0.22145485254,
                'jd': 90002245,
                'jd0': 15589564512,
                'cs01': 7045,
                'rbpv01': 9.5,
                'ir01': 55484,
                'r01': 51845.05,
                'ix_id': 'it_x-x32v0-5Y',
                'r_cpn': 0.045
            }, {
                'tnr': '7Y',
                'tnrValue': 7.0,
                'px': 1.88845452,
                'convspr': 0.07070707,
                'end_date': '2026-12-20Z',
                'theopx': 1.5454645,
                'theospr': 0.0215452,
                'dpth': 86,
                'dp': 0.15566221,
                'jd': 15446545,
                'jd0': 12155452121,
                'cs01': 80000,
                'rbpv01': 6,
                'ir01': 600,
                'r01': 45000,
                'ix_id': 'it_x-x32v0-7Y',
                'r_cpn': 0.0584
            }, {
                'tnr': '3Y',
                'tnrValue': 3.0,
                'px': 1.454545454,
                'convspr': 0.0225155,
                'end_date': '2022-12-20Z',
                'theopx': 1.5021545,
                'theospr': 0.000154446,
                'dpth': 65,
                'dp': 0.0222144,
                'jd': 555121215,
                'jd0': 212515512.05,
                'cs01': 455451,
                'rbpv01': 2.58,
                'ir01': 300,
                'r01': 10000,
                'ix_id': 'it_x-x32v0-3Y',
                'r_cpn': 0.0455
            }, {
                'tnr': '10Y',
                'tnrValue': 10.0,
                'px': 4.24545122,
                'convspr': 0.0547884,
                'end_date': '2029-12-20Z',
                'theopx': 1.588555,
                'theospr': 0.0778777,
                'dpth': 56,
                'dp': 0.055548452,
                'jd': 100000,
                'jd0': 1500000,
                'cs01': 5000,
                'rbpv01': 10,
                'ir01': 650,
                'r01': 22000,
                'ix_id': 'it_x-x32v0-10Y',
                'r_cpn': 0.075
            }
        ],
        'avgliqtygc': [{
                'tnr': '5Y',
                'tnrValue': 5.0,
                'convsprb_ospr': 0.000004,
                'convsprb_ospr1WMa': 0.0000445,
                'convsprb_ospr1MMa': 0.000042,
                'convsprb_ospr2MMa': 0.000005,
                'pxb_ospr': 0.003358555,
                'pxb_ospr1WMa': 0.0005454,
                'pxb_ospr1MMa': 0.00024154212,
                'pxb_ospr2MMa': 0.00021545,
                'dlrscnt': 45,
                'dlrscnt1WMa': 46,
                'dlrscnt1MMa': 46,
                'dlrscnt2MMa': 46,
                'quotescnt': 552121,
                'quotescnt1WMa': 32321,
                'quotescnt1MMa': 656122,
                'quotescnt2MMa': 51545,
                'dpth1WMA': 122,
                'dpth1MMA': 122,
                'dpth2MMA': 122,
                'b_oType': 'Observed'
            }
        ],
        'highliqtygc': [{
                'tnr': '5Y',
                'tnrValue': 5.4,
                'convsprb_ospr': 0.0437,
                'convsprb_ospr1WMa': 0.01067,
                'convsprb_ospr1MMa': 0.00157,
                'convsprb_ospr2MMa': 0.00065,
                'pxb_ospr': 0.0103458,
                'pxb_ospr1WMa': 0.0012159678,
                'pxb_ospr1MMa': 0.010266978,
                'pxb_ospr2MMa': 0.00255218,
                'dlrscnt': 46,
                'dlrscnt1WMa': 465,
                'dlrscnt1MMa': 465,
                'dlrscnt2MMa': 465,
                'quotescnt': 2755109,
                'quotescnt1WMa': 268509,
                'quotescnt1MMa': 266529,
                'quotescnt2MMa': 155211,
                'dpth1WMA': 125,
                'dpth1MMA': 125,
                'dpth2MMA': 126,
                'b_oType': 'Observed'
            }
        ],
        'ognzt': {
            'id': 'it_x-x'
        },
        'indexCurveId': 'it_x EP X srs 32 vsn 1',
        'family': 'it_x-E',
        'asOfDateTime': '2019-01-01T02:30:00Z',
        'id': 'ENDAAABBB',
        'btc': {
            'id': 'END'
        },
        'btcr': {
            'id': 'END-20Sep19-1569030746002'
        },
        'family': 'CI'
    }, {
        'rd': 'AAABBB',
        'tkr': 'it_x-x',
        'asOf': '2019-01-04Z',
        'srs': 32,
        'vsn': 1,
        'onTher': False,
        'rlltkr': 'it_x-x',
        'gc': [{
                'tnr': '5Y',
                'tnrValue': 5.0,
                'px': 1.887545,
                'convspr': 0.022565426654,
                'end_date': '2024-12-20Z',
                'theopx': 1.961,
                'theospr': 0.054311127,
                'dpth': 32,
                'dp': 0.369942645072,
                'jd': 2155522,
                'jd0': 415252021.23,
                'cs01': 45253.16,
                'rbpv01': 6,
                'ir01': 550,
                'r01': 64562,
                'ix_id': 'it_x-x32v0-5Y',
                'r_cpn': 0.0855
            }, {
                'tnr': '7Y',
                'tnrValue': 6.0,
                'px': 1.5464,
                'convspr': 0.06488,
                'end_date': '2026-12-20Z',
                'theopx': 3.468724,
                'theospr': 0.666,
                'dpth': 6,
                'dp': 0.55,
                'jd': 232662.5,
                'jd0': 8585858,
                'cs01': 56555,
                'rbpv01': 85855,
                'ir01': 22454512,
                'r01': 54542,
                'ix_id': 'it_x-x32v0-7Y',
                'r_cpn': 0.0554
            }, {
                'tnr': '3Y',
                'tnrValue': 3.0,
                'px': 1.85858,
                'convspr': 0.11119,
                'end_date': '2022-12-20Z',
                'theopx': 1.897,
                'theospr': 545421,
                'dpth': 63,
                'dp': 0.545,
                'jd': 1000000.58,
                'jd0': 1555555.58,
                'cs01': 4000.91,
                'rbpv01': 3.85,
                'ir01': 345.33,
                'r01': 11111.92,
                'ix_id': 'it_x-x32v0-3Y',
                'r_cpn': 0.45
            }, {
                'tnr': '10Y',
                'tnrValue': 10.5,
                'px': 1.982,
                'convspr': 0.05599,
                'end_date': '2029-12-20Z',
                'theopx': 1.961,
                'theospr': 0.069,
                'dpth': 47,
                'dp': 0.874,
                'jd': 998985.74,
                'jd0': 50004545.74,
                'cs01': 111000.27,
                'rbpv01': 89.58,
                'ir01': 4151.1,
                'r01': 524548.91,
                'ix_id': 'it_x-x32v0-10Y',
                'r_cpn': 0.75
            }
        ],
        'avgliqtygc': [{
                'tnr': '5Y',
                'tnrValue': 54.0,
                'convsprb_ospr': 0.330003,
                'convsprb_ospr1WMa': 0.088215,
                'convsprb_ospr1MMa': 0.9898215,
                'convsprb_ospr2MMa': 0.00145,
                'pxb_ospr': 0.470,
                'pxb_ospr1WMa': 0.077,
                'pxb_ospr1MMa': 0.03417,
                'pxb_ospr2MMa': 0.73417,
                'dlrscnt': 55,
                'dlrscnt1WMa': 56,
                'dlrscnt1MMa': 125,
                'dlrscnt2MMa': 325,
                'quotescnt': 8855,
                'quotescnt1WMa': 96523,
                'quotescnt1MMa': 21545,
                'quotescnt2MMa': 5213,
                'ntlCurrency': 'USD',
                'wklyntlntl': 9999888666,
                'wklyntlntl1WMa': 9999888666555,
                'wklyntlntl1MMa': 1847999988866645,
                'wklyntlntl2MMa': 8559999888666,
                'wklycntr': 99566,
                'wklycntr1WMa': 8585.0,
                'wklycntr1MMa': 653.0,
                'wklycntr2MMa': 852.0,
                'gnxtrd': 299998886666.88,
                'gnxtrd1WMa': 29999888666.59,
                'gnxtrd1MMa': 9999888666.59,
                'gnxtrd2MMa': 9999888666.59,
                'mktServUpdateDate': '2019-01-05Z',
                'dpth1WMA': 122,
                'dpth1MMA': 102,
                'dpth2MMA': 172,
                'b_oType': 'Observed'
            }
        ],
        'highliqtygc': [{
                'tnr': '5Y',
                'tnrValue': 5.0,
                'convsprb_ospr': 0.030,
                'convsprb_ospr1WMa': 0.99455,
                'convsprb_ospr1MMa': 0.15555,
                'convsprb_ospr2MMa': 0.565455,
                'pxb_ospr': 0.794,
                'pxb_ospr1WMa': 0.8595,
                'pxb_ospr1MMa': 0.04739,
                'pxb_ospr2MMa': 0.087859,
                'dlrscnt': 75,
                'dlrscnt1WMa': 75,
                'dlrscnt1MMa': 75,
                'dlrscnt2MMa': 51,
                'quotescnt': 6699,
                'quotescnt1WMa': 3589,
                'quotescnt1MMa': 3699,
                'quotescnt2MMa': 3563,
                'ntlCurrency': 'GBP',
                'wklyntlntl': 78555555,
                'wklyntlntl1WMa': 78555555,
                'wklyntlntl1MMa': 78555555,
                'wklyntlntl2MMa': 78555555,
                'wklycntr': 8000,
                'wklycntr1WMa': 8003.0,
                'wklycntr1MMa': 8000.0,
                'wklycntr2MMa': 900.0,
                'gnxtrd': 78555555.88,
                'gnxtrd1WMa': 27988.59,
                'gnxtrd1MMa': 2785555557.59,
                'gnxtrd2MMa': 717855555597.59,
                'mktSrvUpdateDate': '2019-01-05Z',
                'dpth1WMA': 1352,
                'dpth1MMA': 1352,
                'dpth2MMA': 1352,
                'b_oType': 'Observed'
            }
        ],
        'ognzt': {
            'id': 'it_x-x'
        },
        'indexCurveId': 'it_x EP X srs 32 vsn 1',
        'family': 'it_x-E',
        'asOfDateTime': '2019-01-04T02:30:00Z',
        'id': 'ENDAAABBB',
        'btc': {
            'id': 'END'
        },
        'btcr': {
            'id': 'END-23Sep19-1569289933407'
        },
        'family': 'CI'
    }
]

0 个答案:

没有答案
相关问题