从键值对对象列表中返回值

时间:2020-03-23 01:32:42

标签: python-3.x pandas

我有一个我认为非常简单的问题,但找不到解决方案。

我正在打印以下对象:

test = df['metrics']
print(test)

0       [{'values': ['4']}]
1      [{'values': ['23']}]
2      [{'values': ['32']}]
3       [{'values': ['1']}]
4       [{'values': ['2']}]
5       [{'values': ['1']}]
6     [{'values': ['113']}]
7       [{'values': ['1']}]
8       [{'values': ['2']}]
9       [{'values': ['2']}]
10      [{'values': ['1']}]
Name: metrics, dtype: object

我只想返回值。我已经尝试过.values()的lamba函数,但是不起作用。

2 个答案:

答案 0 :(得分:1)

使用:

FormControl

或者如果您只想获取列表的位置0:

df['metrics'] = df['metrics'].explode().map(lambda x: x['values']).explode()
#df['metrics'] = df['metrics'].explode().map(lambda x: x.values()).explode() #not the same

答案 1 :(得分:0)

制作一个空列表和一个辅助函数,然后使用for循环遍历键,值对并将每个值附加到列表中。最后返回列表。