Questão nº 28

Questão de Tecnologia da Informação · FGV CVM 2024 (nº 28)

FGV2024Analista CVM - Ciência de Dados (Perfil 7)Tecnologia da Informação
Gabarito: Dver comentário ↓

Igor, analista de dados da CVM, escreveu e rodou o código a seguir.

```python
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize
texto = "Eu sou um analista de dados da CVM!"
stop_words = set(stopwords.words('portuguese'))
tokens = word_tokenize(texto)
tokens_processados = [w for w in tokens if not w in stop_words]
print(tokens_processados)
```

Considerando que o código foi executado sem erros e sabendo que Igor está usando Python 3.10.12 e NLTK 3.8.1, a saída do terminal foi:

Resposta comentada

Gabarito Alternativa D

Stop words são palavras comuns (como 'eu', 'o', 'a') que geralmente não adicionam muito significado a uma frase e são removidas para focar nas palavras mais importantes, enquanto a tokenização é o processo de dividir um texto em unidades menores, como palavras ou pontuações.

  • (A) Incorreta: Esta alternativa assume que a remoção de stop words é case-insensitive (removendo 'Eu') e que a pontuação ('!') é automaticamente descartada, o que não ocorre com o código fornecido. Armadilha da banca: Muitos esperam que a remoção de stop words inclua uma etapa de conversão para minúsculas e descarte de pontuação, mas o código não implementa essas ações.
  • (B) Incorreta: Assume que a remoção de stop words é case-insensitive, removendo 'Eu' (que não é removido pelo código devido à capitalização).
  • (C) Incorreta: Assume que a pontuação ('!') é automaticamente descartada, o que não acontece com o word_tokenize do NLTK que a trata como um token separado.
  • (D) Correta: O word_tokenize separa a pontuação ('!') como um token distinto. A lista de stop words (stopwords.words('portuguese')) contém palavras em minúsculas. Como a comparação w in stop_words é case-sensitive, 'Eu' (com 'E' maiúsculo) não é encontrado na lista de stop words (que contém 'eu' minúsculo) e, portanto, não é removido. As palavras 'sou', 'um', 'de', 'da' são removidas por estarem na lista de stop words em minúsculas.
  • (E) Incorreta: Não removeu a stop word 'sou', que está presente na lista de stop words em português e seria removida pelo código.

Fonte: FGV CVM 2024 Analista CVM - Ciência de Dados (Perfil 7) (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho