如何使用pandas dataframe从字典列表的列中提取值



我有这个数据框架

| date | value
|------|------|
|2020-08-12| [{'action_type': 'video_view', 'value': '527'}]|
|2020-08-12|[{'action_type': 'video_view', 'value': '662'}]|
|2020-07-01| [{'action_type': 'video_view', 'value': '69'}]|

我期望的输出应该是

| date | value
|------|------|
|2020-08-12|527|
|2020-08-12|662|
|2020-07-01|69|

请帮

给定值列包含数组数据,您可以按如下方式提取它:

df['value'] = df['value'].apply(lambda data: data[0].get('value'))

您可以使用straccessor:

df['value'] = df['value'].str[0].str['value']

如果您需要通过value列进行一些数学和计算,请不要忘记将类型更改为数字,如下所示:

df['value'] = df['value'].astype(int)

最新更新