crie uma nova coluna de dataframe do pandas com base na condição if-else com uma pesquisa

Eu tenho um dataframe de pandas e preciso criar uma nova coluna com base em uma condição if-else. Esta pergunta já surgiu aqui várias vezes (por exemplo,Criando uma nova coluna com base na condição if-elif-else)

No entanto, não posso aplicar a solução proposta, pois também preciso procurar valores em uma lista para verificar a condição. Não posso fazer isso com a solução proposta, porque não tenho certeza de como posso acessar minha lista de pesquisa na função externa. Minha lista de pesquisa precisaria ser global, o que eu quero evitar. Tenho a sensação de que deve haver uma maneira melhor de fazer isso.

Considere o seguinte quadro de dadosdf:

letters
A
B
C
D
E
F

Eu também tenho uma lista que contém valores de pesquisa:

lookup = [C,D]

Agora, quero criar uma nova coluna no meu quadro de dados que contenha1 se o respectivo valor estiver contido emlookup e0 se os valores não estiverem emlookup.

A abordagem típica seria:

df.apply(helper, axis=1)

def helper(row):
  if(row['letters'].isin(lookup)):
     row['result'] = 1
  else:
     row['result'] = 0

No entanto, não sei como posso acessarlookup nohelper() sem torná-lo global.

O resultado deve ficar assim:

letters    result
A          0
B          0
C          1
D          1
E          0
F          0

questionAnswers(1)

yourAnswerToTheQuestion