Нужно создать множество из значений подстрок в значениях признака

Есть признак в DataFrame, значения у которого - строка, содержащая разное число подстрок через запятую: df.head - ниже:

0              ['European', 'French', 'International']
1                                                  NaN
2    ['Japanese', 'Sushi', 'Asian', 'Grill', 'Veget...
3                                                  NaN
4    ['German', 'Central European', 'Vegetarian Fri...
Name: Cuisine Style, dtype: object

И так далее, до 11 подстрок в каждой.

Как извлечь вручную каждое значение каждого элемента строки в нужном виде?

Нашла, а в цикл или функцию, чтобы все прогнать и загнать в множество, никак не получается.

    df['Cuisine Style']= df['Cuisine Style'].apply(lambda s: 
s.replace('[','') if isinstance(s, str) else s)
df['Cuisine Style']= df['Cuisine Style'].apply(lambda s: s.replace(']','') 
if isinstance(s, str) else s)
cuisine_set = set()
for string in df['Cuisine Style']:
    cui_list=df['Cuisine Style'][string].split(',')
    for cuisine in cui_list:
        cuisine=cuisine[1:-1]
        if cuisine in cuisine_set:
            continue
        else:
            cuisine_set.add(cuisine)
cuisine_set

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

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

Если я правильно понял вопрос:

from yaml import safe_load   #   pip install pyyaml

res = df["Cuisine_Style"].apply(safe_load).to_list()

результат:

In [9]: res
Out[9]: [['European', 'French'], ['Italian']]

Исходный фрейм:

In [10]: df
Out[10]:
            Cuisine_Style
0  ['European', 'French']
1             ['Italian']

UPD:

На выходе должно получится множество всех возможных из столбца значений {'European', 'French', 'Italian'.... }

In [128]: res = df["Cuisine Style"].dropna().map(safe_load).sum()

In [129]: len(res)
Out[129]: 95613

In [130]: len(set(res))
Out[130]: 125

In [131]: set(res)
Out[131]:
{'Afghani',
 'African',
 'Albanian',
 'American',
 'Arabic',
 'Argentinean',
 'Armenian',
 'Asian',
 'Australian',
 'Austrian',
 'Azerbaijani',
 'Balti',
 'Bangladeshi',
 'Bar',
 'Barbecue',
 'Belgian',
 'Brazilian',
 ...
→ Ссылка