Как создать массив из определенных значений вложенного словаря?

У меня есть вложенный словарь:

{pers:{sigs:[A, 1, 6, 3]},
      {rets:[A, 5, 9, 2]},
      {kols:[D, 1, 3, 7]}}

Как мне создать массив или датафрейм состоящий только из вторых элементов вложенных словарей sigs, rets, kols?


Ответы (1 шт):

Автор решения: CrazyElf

Если исправить структуру на корректную, то, наверное, так:

import pandas as pd

data = \
{'pers':[
    {'sigs':['A', 1, 6, 3]},
    {'rets':['A', 5, 9, 2]},
    {'kols':['D', 1, 3, 7]}
]}

df = pd.DataFrame({k:v for d in data['pers'] for k,v in d.items()})

Тогда в df:


  sigs rets kols
0   A    A    D
1   1    5    1
2   6    9    3
3   3    2    7

Update Я не дочитал задание, если нужны только вторые элементы, то примерно так же:

lst_ = [v[1] for d in data['pers'] for k,v in d.items()]
# [1, 5, 1]
→ Ссылка