熊猫从键值对中提取值

时间:2020-05-03 06:37:27

标签: pandas

我有一个Datafrmae,其输出如下所示,我正在尝试提取特定文本

id,value
101,*sample value as shown below*

我正在尝试提取与此文本中的键对应的值

预期产量

id, key, id_new

101,Ticket-123, 1001

以下是数据的外观:

{
    'fields': {
        'status': {
            'statusCategory': {
                'colorName': 'yellow',
                'name': 'In Progress',
                'key': 'indeterminate',
                'id': 4
            },
            'description': '',
            'id': '11000',
            'name': 'In Progress'
        },
        'summary': 'Sample Text'
    },
    'key': 'Ticket-123',
    'id': '1001'
}

1 个答案:

答案 0 :(得分:1)

使用Series.str.get

df['key'] = df['value'].str.get('key')
df['id_new'] = df['value'].str.get('id')
print (df)
    id                                              value         key id_new
0  101  {'fields': {'status': {'statusCategory': {'col...  Ticket-123   1001

经过测试的Dataframe

v = {
    'fields': {
        'status': {
            'statusCategory': {
                'colorName': 'yellow',
                'name': 'In Progress',
                'key': 'indeterminate',
                'id': 4
            },
            'description': '',
            'id': '11000',
            'name': 'In Progress'
        },
        'summary': 'Sample Text'
    },
    'key': 'Ticket-123',
    'id': '1001'
}
df = pd.DataFrame({'id':101, 'value':[v]})