Извлечение значений из словаря для соответствующего ключа - PullRequest
0 голосов
/ 13 марта 2020

У меня есть словарь в нижеприведенном шаблоне:

dict_one = {1: [2, 3, 4], 2: [3, 4, 4, 5],3 : [2, 5, 6, 6]}

Мне нужно получить вывод, такой, что для каждого ключа у меня есть только одно значение рядом с ним, и, наконец, мне нужно создать фрейм данных из него.

Вывод будет похож на:

1 2                
1 3                
1 4               
2 3            
2 4             
2 4         
2 5                                       
3 2             
3 5          
3 6           
3 6

Пожалуйста, помогите мне с этим.

dict_one = {1: [2, 3, 4], 2: [3, 4, 4, 5],3 : [2, 5, 6, 6]}
df_column = ['key','value']
for key in dict_one.keys():
  value = dict_one.values()
  row = (key,value)
  extended_ground_truth = pd.DataFrame.from_dict(row, orient='index', columns=df_column)
extended_ground_truth.to_csv("extended_ground_truth.csv", index=None)

Ответы [ 2 ]

0 голосов
/ 13 марта 2020

Вы можете нормализовать данные при переборе словаря

df=pd.DataFrame(((key, value[0]) for key,value in dict_one.items()), 
    columns=["key", "value"])
0 голосов
/ 13 марта 2020

Вы можете заключить значения в списки, затем использовать DataFrame.from_dict и, наконец, использовать explode для расширения списков:

pd.DataFrame.from_dict({k: [v] for k, v in dict_one.items()}, orient='index').explode(0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...