如何在python中将列表的字典转换为pandas数据框架



我有这个字典列表的项目,但我有问题,将其转换为熊猫数据框架,这是一个响应,我得到命中端点

{'monologues': [{'speaker': 0,
'elements': [{'type': 'text',
'value': 'So',
'ts': 0.0,
'end_ts': 0.18,
'confidence': 0.93},
{'type': 'punct', 'value': ' '},
{'type': 'text',
'value': 'this',
'ts': 0.18,
'end_ts': 0.36,
'confidence': 1.0},
{'type': 'punct', 'value': ' '},
{'type': 'text',
'value': 'is',
'ts': 0.36,
'end_ts': 0.42,
'confidence': 1.0},
{'type': 'punct', 'value': '.'}]}]}

我想得到ts, end_ts和值到一个数据帧

期望的数据帧是:

Words   ts      end_ts
0   so      0.0     0.18
1   this    0.18    0.36

这就是我所尝试的,但没有给我我所期望的实际响应

import pandas as pd
df = pd.DataFrame(transcript_json, columns=transcript_json.keys())
df.head() 

您需要解析字典,然后将其附加到DataFrame。

import pandas as pd
js = {'monologues': [{'speaker': 0,
'elements': [{'type': 'text',
'value': 'So',
'ts': 0.0,
'end_ts': 0.18,
'confidence': 0.93},
{'type': 'punct', 'value': ' '},
{'type': 'text',
'value': 'this',
'ts': 0.18,
'end_ts': 0.36,
'confidence': 1.0},
{'type': 'punct', 'value': ' '},
{'type': 'text',
'value': 'is',
'ts': 0.36,
'end_ts': 0.42,
'confidence': 1.0},
{'type': 'punct', 'value': '.'}]}]}
inner_js = [val for _, val in js.items()][0][0]
df = pd.DataFrame(columns=['Words', 'ts', 'end_ts'])
for i in inner_js['elements']:
if i.get('ts') or i.get('end_ts'):
df = df.append({'Words':i['value'], 'ts':i['ts'], 'end_ts':i['end_ts']}, ignore_index=True)

相关内容

  • 没有找到相关文章

最新更新