Описание проблемы: мне нужно установить переменную для каждой строки, но только если она находится в пределах диапазона списка во втором столбце той же строки.
Пример фрейма данных:
df = pd.Dataframe({'col1': ['A', 'T' , 'P', 'Z'], 'col2': ['A, B, C', 'D, E, F' , 'G, H, I, P', 'M, N, R, ZGTR']})
Мне нужно получить все строки, где col1 является частью col2. ожидаемый результат:
col1 col2
'A' 'A, B, C'
'P' 'G, H, I, P'
Мой подход, который возвращает TypeError о том, что объекты Series изменяемы и не могут быть хешированы:
df[df['col2'].str.match(df['col1'])]
Насколько я понимаю, я нужно как-то указать, что сравнение должно производиться в пределах одной строки. Я знаю, что itterrows будет решением, но я бы предпочел что-нибудь без зацикливания.