Регулярное выражение для извлечения и разделения текста из одного столбца в кадре данных - PullRequest
0 голосов
/ 04 октября 2019

У меня есть набор данных с двумя столбцами - один - дата, а другой - данные, а значение - как показано ниже.

date                                    data
1-1-2019     [[{'user_id': 1111, 'joining_date': '2011-01-01', 'country': 'EN'}]]

У меня вопрос: как разделить это значение и создать новый столбец? (и получить префикс в качестве имени столбца), как показано ниже?

date       userid            joining_date          country
1-1-2019    1111              2011-01-01           EN

1 Ответ

0 голосов
/ 04 октября 2019

Это должно работать:

# setup
df = pd.DataFrame({
    "date": ['1-1-2019', '1-1-2019'],
    "data": [[{'user_id': 1111, 'joining_date': '2011-01-01', 'country': 'EN'}],
             [{'user_id': 1234, 'joining_date': '2017-01-01', 'country': 'FR'}]]
})

# core logic
df1 = pd.DataFrame(df['data'].apply(lambda _: _[0]).values.tolist())
df1['date'] = df['date']

Вывод:

    country joining_date    user_id date
0   EN      2011-01-01      1111    1-1-2019
1   FR      2017-01-01      1234    1-1-2019
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...