我需要一些家庭作业帮助。我需要使用Python字典从头开始创建一个新数据库,并从中提取值。原始数据以列表格式提供(请在原始数据列表下方找到)。
该列表包含3天的数据字段'asOf'
(2019-01-01Z,2019-01-04Z,2019-01-05Z)。我需要提取的主要价值似乎嵌套在其他列表/字典中:
我需要提取所有字段及其对应的值并将其存储在'gc'
中。 “ gc”内部有4个字典,每个字典之间的差异为'tnr'
(5年,3年,7年,10年)
我需要提取所有字段及其对应值并将其存储在'avgliqtygc'
中(例如'wklyntlntl','wklycntr'等). 'avgliqtygc' has 4 dictionaries inside which again differ by
'tnr'`(5年,3年,7年,10Y)
创建一个函数,该函数为特定的'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'
}
]