您可以将
concatwith
dict comprehension与with
一起使用,
pop用于提取列,删除第二层并
join恢复原始:
df1 = (pd.concat({i: pd.Dataframe(x) for i, x in df_actions.pop('actions').items()}) .reset_index(level=1, drop=True) .join(df_actions) .reset_index(drop=True))等同于:
df1 = (pd.concat({i: json_normalize(x) for i, x in df_actions.pop('actions').items()}) .reset_index(level=1, drop=True) .join(df_actions) .reset_index(drop=True))print (df1) type value id0 a 17 121 b 19 122 a 1 153 b 3 154 c 5 15



