Hi,
I used the following code:
def write_data(file, data_file):
fields = ['LC_ID', 'DIR', 'FILE', 'ID', 'VSL', 'RAD', 'PROP', 'WD', 'ROT', 'HS', 'TZ', 'WEA', 'NTT', 'NBT',
'MX_OBS', 'MX_SBS', 'MN_VTS', 'MX_VTS', 'AST', 'LB_OBA', 'LB_OBB', 'LB_SBA', 'LB_SBB', 'XTDP', 'FDR',
'FST', 'FPL', 'FATP', 'FATC', 'NO_OBS', 'NO_SBS', 'NO_VTS', 'VTL', 'HTL', 'CHK']
with open(file,'w') as f:
w = csv.DictWriter(f, fields)
w.writeheader()
for k in data_file:
w.writerow({field: data_file[k].get(field) or k for field in fields})
f.close()
The dictionary looks as follows:
{'LCST_Static.tst_-99_69.00_3048.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '3048.90', 'NBT': '2533.50', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.892', 'LB_OBB': '0.832', 'LB_SBA': '0.243', 'LB_SBB': '0.243', 'XTDP': '350.70', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2432', 'NO_SBS': '.2432', 'NO_VTS': 10.036, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_101.00_2872.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '2872.90', 'NBT': '2215.00', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.910', 'LB_OBB': '0.851', 'LB_SBA': '0.338', 'LB_SBB': '0.338', 'XTDP': '399.50', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2423', 'NO_SBS': '.2423', 'NO_VTS': 4.094, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_64.00_4006.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '4006.90', 'NBT': '3443.80', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.917', 'LB_OBB': '0.856', 'LB_SBA': '0.205', 'LB_SBB': '0.205', 'XTDP': '348.60', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2526', 'NO_SBS': '.2526', 'NO_VTS': 11.684, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_82.00_3983.00': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '3983.00', 'NBT': '3324.00', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.923', 'LB_OBB': '0.862', 'LB_SBA': '0.236', 'LB_SBB': '0.236', 'XTDP': '385.50', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2525', 'NO_SBS': '.2525', 'NO_VTS': 7.871, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_59.00_3470.00': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '3470.00', 'NBT': '2933.40', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.901', 'LB_OBB': '0.841', 'LB_SBA': '0.251', 'LB_SBB': '0.251', 'XTDP': '328.90', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2468', 'NO_SBS': '.2468', 'NO_VTS': 8.732, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_75.00_4210.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '4210.90', 'NBT': '3589.20', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.938', 'LB_OBB': '0.876', 'LB_SBA': '0.205', 'LB_SBB': '0.205', 'XTDP': '387.90', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2507', 'NO_SBS': '.2507', 'NO_VTS': 6.926, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_56.00_2983.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '2983.90', 'NBT': '2463.30', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.923', 'LB_OBB': '0.861', 'LB_SBA': '0.313', 'LB_SBB': '0.313', 'XTDP': '312.60', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2463', 'NO_SBS': '.2463', 'NO_VTS': 6.903, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_70.00_4186.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '4186.90', 'NBT': '3592.00', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.941', 'LB_OBB': '0.878', 'LB_SBA': '0.200', 'LB_SBB': '0.200', 'XTDP': '381.50', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2525', 'NO_SBS': '.2525', 'NO_VTS': 6.288, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_49.00_3534.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '3534.90', 'NBT': '3051.70', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.924', 'LB_OBB': '0.861', 'LB_SBA': '0.226', 'LB_SBB': '0.226', 'XTDP': '325.40', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2157', 'NO_SBS': '.2157', 'NO_VTS': 5.982, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_70.00_4177.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '4177.90', 'NBT': '3582.80', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.922', 'LB_OBB': '0.860', 'LB_SBA': '0.200', 'LB_SBB': '0.200', 'XTDP': '394.60', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.2204', 'NO_SBS': '.2204', 'NO_VTS': 3.514, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_45.00_3387.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '3387.90', 'NBT': '2926.00', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.918', 'LB_OBB': '0.856', 'LB_SBA': '0.235', 'LB_SBB': '0.235', 'XTDP': '319.70', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.1815', 'NO_SBS': '.1815', 'NO_VTS': 4.863, 'VTL': 0, 'HTL': -99, 'CHK': None}, 'LCST_Static.tst_-99_62.00_4096.90': {'DIR': 'C:/Users/---/Desktop/Test ---', 'FILE': 'Static.tst', 'ID': 'ST', 'VSL': 'Static.tst', 'RAD': -99, 'PROP': -99, 'WD': -99, 'ROT': -99, 'HS': -99, 'TZ': -99, 'WEA': -99, 'NTT': '4096.90', 'NBT': '3544.60', 'MX_OBS': -99, 'MX_SBS': -99, 'MN_VTS': -99, 'MX_VTS': -99, 'AST': -99, 'LB_OBA': '0.923', 'LB_OBB': '0.861', 'LB_SBA': '0.195', 'LB_SBB': '0.195', 'XTDP': '382.10', 'FDR': -99, 'FST': -99, 'FPL': -99, 'FATP': -99, 'FATC': -99, 'NO_OBS': '.1862', 'NO_SBS': '.1862', 'NO_VTS': 3.105, 'VTL': 0, 'HTL': -99, 'CHK': None}}
The output is as follows. But, looking at the output, it seems that the values for each key of the nested dictionary are not correctly presented in each column. Note that I added 'LC-ID' as additional key to pass the name of the nested dictionary to the csv.
Output:
LC_ID,DIR,FILE,ID,VSL,RAD,PROP,WD,ROT,HS,TZ,WEA,NTT,NBT,MX_OBS,MX_SBS,MN_VTS,MX_VTS,AST,LB_OBA,LB_OBB,LB_SBA,LB_SBB,XTDP,FDR,FST,FPL,FATP,FATC,NO_OBS,NO_SBS,NO_VTS,VTL,HTL,CHK
LCST_Static.tst_-99_69.00_3048.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,3048.90,2533.50,-99,-99,-99,-99,-99,0.892,0.832,0.243,0.243,350.70,-99,-99,-99,-99,-99,.2432,.2432,10.036,LCST_Static.tst_-99_69.00_3048.90,-99,LCST_Static.tst_-99_69.00_3048.90
LCST_Static.tst_-99_101.00_2872.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,2872.90,2215.00,-99,-99,-99,-99,-99,0.910,0.851,0.338,0.338,399.50,-99,-99,-99,-99,-99,.2423,.2423,4.094,LCST_Static.tst_-99_101.00_2872.90,-99,LCST_Static.tst_-99_101.00_2872.90
LCST_Static.tst_-99_64.00_4006.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,4006.90,3443.80,-99,-99,-99,-99,-99,0.917,0.856,0.205,0.205,348.60,-99,-99,-99,-99,-99,.2526,.2526,11.684,LCST_Static.tst_-99_64.00_4006.90,-99,LCST_Static.tst_-99_64.00_4006.90
LCST_Static.tst_-99_82.00_3983.00,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,3983.00,3324.00,-99,-99,-99,-99,-99,0.923,0.862,0.236,0.236,385.50,-99,-99,-99,-99,-99,.2525,.2525,7.871,LCST_Static.tst_-99_82.00_3983.00,-99,LCST_Static.tst_-99_82.00_3983.00
LCST_Static.tst_-99_59.00_3470.00,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,3470.00,2933.40,-99,-99,-99,-99,-99,0.901,0.841,0.251,0.251,328.90,-99,-99,-99,-99,-99,.2468,.2468,8.732,LCST_Static.tst_-99_59.00_3470.00,-99,LCST_Static.tst_-99_59.00_3470.00
LCST_Static.tst_-99_75.00_4210.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,4210.90,3589.20,-99,-99,-99,-99,-99,0.938,0.876,0.205,0.205,387.90,-99,-99,-99,-99,-99,.2507,.2507,6.926,LCST_Static.tst_-99_75.00_4210.90,-99,LCST_Static.tst_-99_75.00_4210.90
LCST_Static.tst_-99_56.00_2983.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,2983.90,2463.30,-99,-99,-99,-99,-99,0.923,0.861,0.313,0.313,312.60,-99,-99,-99,-99,-99,.2463,.2463,6.903,LCST_Static.tst_-99_56.00_2983.90,-99,LCST_Static.tst_-99_56.00_2983.90
LCST_Static.tst_-99_70.00_4186.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,4186.90,3592.00,-99,-99,-99,-99,-99,0.941,0.878,0.200,0.200,381.50,-99,-99,-99,-99,-99,.2525,.2525,6.288,LCST_Static.tst_-99_70.00_4186.90,-99,LCST_Static.tst_-99_70.00_4186.90
LCST_Static.tst_-99_49.00_3534.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,3534.90,3051.70,-99,-99,-99,-99,-99,0.924,0.861,0.226,0.226,325.40,-99,-99,-99,-99,-99,.2157,.2157,5.982,LCST_Static.tst_-99_49.00_3534.90,-99,LCST_Static.tst_-99_49.00_3534.90
LCST_Static.tst_-99_70.00_4177.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,4177.90,3582.80,-99,-99,-99,-99,-99,0.922,0.860,0.200,0.200,394.60,-99,-99,-99,-99,-99,.2204,.2204,3.514,LCST_Static.tst_-99_70.00_4177.90,-99,LCST_Static.tst_-99_70.00_4177.90
LCST_Static.tst_-99_45.00_3387.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,3387.90,2926.00,-99,-99,-99,-99,-99,0.918,0.856,0.235,0.235,319.70,-99,-99,-99,-99,-99,.1815,.1815,4.863,LCST_Static.tst_-99_45.00_3387.90,-99,LCST_Static.tst_-99_45.00_3387.90
LCST_Static.tst_-99_62.00_4096.90,C:/Users/---/Desktop/Test ---,Static.tst,ST,Static.tst,-99,-99,-99,-99,-99,-99,-99,4096.90,3544.60,-99,-99,-99,-99,-99,0.923,0.861,0.195,0.195,382.10,-99,-99,-99,-99,-99,.1862,.1862,3.105,LCST_Static.tst_-99_62.00_4096.90,-99,LCST_Static.tst_-99_62.00_4096.90