Как добавить dict в dataframe с именем ключа?

#python-3.x #pandas

#python-3.x #панды

Вопрос:

У меня есть dataframe:

 d = pd.DataFrame('variant':['lamin', 'chromo'],'glassName':['chrome', 'black'],'Type':['low', 'high']'})
 

Я хочу dict для всех значений dataframe в dataframe col:

 {{"fetch" : [{"name" : "variant" , "value" : "lamin"},{"name" : "glassName" , "value" : "chrome"},{"name" : "Type" , "value" : "low"}]}}
 
 {{"fetch" : [{"name" : "variant" , "value" : "chromo"},{"name" : "glassName" , "value" : "black"},{"name" : "Type" , "value" : "high"}]}}
 

Комментарии:

1. Всегда есть одна строка?

2. существует много строк

Ответ №1:

Я думаю, вам нужен вложенный список и понимание словаря для списка значений:

 d = pd.DataFrame({'variant':['lamin', 'chromo'],
                 'glassName':['chrome', 'black'],'Type':['low', 'high']})
 

 L = [{"fetch" : [{"name":k,'value':v} for k, v in x.items()]} for x in d.to_dict('records')]
 

 print (L[0])
{'fetch': [{'name': 'variant', 'value': 'lamin'}, {'name': 'glassName', 'value': 'chrome'}, {'name': 'Type', 'value': 'low'}]}
print (L[1])
'value': 'low'}]}
{'fetch': [{'name': 'variant', 'value': 'chromo'}, {'name': 'glassName', 'value': 'black'}, {'name': 'Type', 'value': 'high'}]}