Как сравнить текстовое значение каждого столбца?

#python #pandas #compare #isin

#python #панды #Сравнить #isin

Вопрос:

Я хочу сравнить с каждым столбцом в python.

например :

нет. Имя имя_конвертировать содержит
0 яблочный пирог Apple Верно
1 яблочный пирог клубника Ложь
2 bananashake банан Верно
3 bananashake банан Верно

Я хочу создать contains столбцы. Он определяет результат сравнения каждого столбца ( name с name_convert ). applepie (in name ) содержит строку apple (in name_convert ).

Как я могу создать новый столбец, содержащий True, если name_convert это подстрока name ?

Вот моя попытка:

 data['contains'] = data['name'].isin(data['name_convert'])
 

Комментарии:

1. добавьте свой код, и давайте посмотрим, что вы сделали до сих пор.

2. Я добавляю его. пожалуйста, прочтите это.

Ответ №1:

Вы можете сделать это с list comprehension zip помощью функции and:

 df['contains']=[i in j for i,j in zip(df['name_convert'],df['name'])]

: df
Out[10]: 
   no.         name name_convert  contains
0    0     applepie        apple      True
1    1     applepie   strawberry     False
2    2  bananashake       banana      True
3    3  bananashake       banana      True