I have a piece of code which generates a list of nested dictionaries like below:
[{'cb': ({'Name': 'A', 'ID': 1, 'num': 50},
   {'Name': 'A', 'ID': 2, 'num': 68}),
  'final_value': 118},
 {'cb': ({'Name': 'A', 'ID': 1, 'num': 50},
   {'Name': 'A', 'ID': 4, 'num': 67}),
  'final_value': 117},
 {'cb': ({'Name': 'A', 'ID': 1, 'num': 50},
   {'Name': 'A', 'ID': 6, 'num': 67}),
  'final_value': 117}]
I want to convert the dictionary into a dataframe like below
How can I do it using Python?
I have tried the below piece of code
merge_values =   [{'cb': ({'Name': 'A', 'ID': 1, 'num': 50},
       {'Name': 'A', 'ID': 2, 'num': 68}),
      'final_value': 118},
     {'cb': ({'Name': 'A', 'ID': 1, 'num': 50},
       {'Name': 'A', 'ID': 4, 'num': 67}),
      'final_value': 117},
     {'cb': ({'Name': 'A', 'ID': 1, 'num': 50},
       {'Name': 'A', 'ID': 6, 'num': 67}),
      'final_value': 117}]
test = pd.DataFrame()
i = 0
for match in merge_values:
    for d in match:
        final_cfr = d['final_value']
        comb = d['cb']
        i = i+1
        z = pd.DataFrame()
        for t in comb:
            dct = {k:[v] for k,v in t.items()}
            x = pd.DataFrame(dct)
            x['merge_id'] = i
            x['Final_Value'] = final_value
            test = pd.concat([test, x])  
The problem with this piece of code is it adds the rows one below another. I need the elements of the tuple next to each other.

 
     
    