def to_s(r):
    return pd.read_json(json.dumps(r)).unstack()
flattened_choice_set = df['choice_set'].apply(to_s)
flattened_choice_set.columns = ['_'.join((str(col[0]), col[1])) for col in
    flattened_choice_set.columns]
result = pd.merge(df, flattened_choice_set, left_index=True, right_index=True
    ).drop('choice_set', axis=1)
result
хранить словарь в кадре данных pandas