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

Необходимо убрать в колонке name кавычки и квадратные скобки и преобразовать в список, не изменяя ячейки с отсутствующими значениями (как добавить пустое значение на этапе создания df не знаю, поэтому поставил вместо NaN - ''):

d = {
    'name': [
        '', 
        ['tot', 'piter', 'carl'], 
        ['brick', 'nick'], 
        ['rick', 'reaven', 'bart', 'homer'], 
        ['rick', 'morty']
    ],
    'Date': [
        '11/05/2011', 
        '9/02/2010', 
        '1/01/2014', 
        '12/20/2020', 
        '9/30/2009'
    ],
    'Address': [
        'BY', 
        'YU', 
        'RU', 
        'BY', 
        'BY'
    ]
}
df = pd.DataFrame(data = d)

Ответ должен выглядеть как:

name Date Address
NaN 11/05/2011 BY
[tot, piter, carl] 9/02/2010 YU
[brick, nick] 1/01/2014 RU
[rick, reaven, bart, homer] 12/20/2020 BY
[rick, morty] 9/30/2009 BY

Желательно, не использовать циклы.


Ответы (2 шт):

Автор решения: CrazyElf

Поскольку не сказано, что делать с NA, то допустим пускай превращается в строку:

df['name'] = df['name'].str.join(', ')

Результат:

name Date Address
<NA> 11/05/2011 BY
tot, piter, carl 9/02/2010 YU
brick, nick 1/01/2014 RU
rick, reaven, bart, homer 12/20/2020 BY
rick, morty 9/30/2009 BY
→ Ссылка
Автор решения: Namerek

Если всетаки с N/A нужно что-то делать то можно так:

import pandas as pd

d = {
    'name': [
        '',
        ['tot', 'piter', 'carl'],
        ['brick', 'nick'],
        ['rick', 'reaven', 'bart', 'homer'],
        ['rick', 'morty']
    ],
    'Date': [
        '11/05/2011',
        '9/02/2010',
        '1/01/2014',
        '12/20/2020',
        '9/30/2009'
    ],
    'Address': [
        'BY',
        'YU',
        'RU',
        'BY',
        'BY'
    ]
}
df = pd.DataFrame(data=d)


def list_to_str(item: list):
    if isinstance(item, list) and item:
        return ', '.join(item)
    # Тут можно добавить дополнительную обработку

df['name'] = df['name'].apply(list_to_str)
print(df)
                        name        Date Address
0                       None  11/05/2011      BY
1           tot, piter, carl   9/02/2010      YU
2                brick, nick   1/01/2014      RU
3  rick, reaven, bart, homer  12/20/2020      BY
4                rick, morty   9/30/2009      BY
→ Ссылка