Как проверить, присутствует ли вложенный список, а если нет, вкладывать? - PullRequest
0 голосов
/ 16 января 2019

У меня есть одна строка df, которая выглядит так:

id         tags
1         [[[band_music, fun], tv], movies]

Иногда df может выглядеть так в зависимости от источника:

id         tags
1         [[[band_music, fun], tv]

или как это:

id         tags
1         [band_music, fun]

или как это:

id         tags
1         fun

Как проверить столбец, если вложенные списки присутствуют, и развернуть их так, чтобы они выглядели так:

или как это:

id         tags
1         [band_music, fun,movies,tv]

Ответы [ 2 ]

0 голосов
/ 16 января 2019

Использование findall

df.tags.astype(str).str.findall("'([^']*)'")
0    [band_music, fun, tv]
Name: tags, dtype: object
0 голосов
/ 16 января 2019

Попробуйте:

import re
df['tags'][1] = re.split(',', str(df['tags'][1]).replace('[','').replace(']', ''))

Выход:

id  tags
1   ['band_music', 'fun', 'tv', 'movies']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...