Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Encontrar string em um dataframe

Olá. Preciso verificar se o nome dos cursos que estão em um dataframe do pandas contém algum termo impróprio. Mas não estou conseguindo. Alguém sabe me ajudar? O programa precisa percorrer todos os cursos do dataframe e verificar se contém algum dos nomes impróprios listados.

import pandas as pd
import numpy as np

sistec = pd.DataFrame(pd.read_csv('florianopolis.csv', sep=';'))
sistec[['no_curso','tipo_curso']].head()

    no_curso                                    tipo_curso
0    TÉCNICO EM METEOROLOGIA        TÉCNICO
1    TÉCNICO EM ELETROTÉCNICA        TÉCNICO
1    INGLÊS                                    FORMAÇÃO CONTINUADA
3    INGLÊS                                    FORMAÇÃO CONTINUADA
4     CAVALGADA TRADICIONAL            FORMAÇÃO CONTINUADA

nomes_improprios = ['cavalgada', 'missa', 'festa']

for palavra in nomes_improprios:
    curso_improrio = sistec['no_curso'].find(palavra) 

    print(f'O nome do curso {curso_improrio} possui um termo impróprio')
1 resposta
solução!

Consegui encontrar uma solução. Vou deixar registrada caso alguém tenha interesse.

nome = '|'.join(nomes_improprios)
sistec['nome_improprio'] = sistec.no_curso.str.contains(nome)
sistec.query("nome_improprio == True")