Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Desafio com Python e Pandas Classificação de Sentimento

import pandas as pd

df = pd.read_csv("Reviews.csv", encoding="utf-8")

print(df["Review Text"].head())

def classificar_sentimento(texto):
texto = texto.lower()
if any(p in texto for p in ["excelente", "bom", "ótimo", "adoro", "recomendo"]):
return "Positivo"
elif any(n in texto for n in ["péssimo", "ruim", "horrível", "não recomendo", "fraco"]):
return "Negativo"
else:
return "Neutro"

df["Sentimento"] = df["Review Text"].apply(classificar_sentimento)

print(df[["Review Text", "Sentimento"]].head())

from google import genai
import os

client = genai.Client(api_key=os.environ["GOOGLE_API_KEY"])

def classificar_sentimento_llm(texto):
resp = client.models.generate_content(
model="gemini-2.5-flash",
contents=f"Classifique o sentimento como Positivo, Negativo ou Neutro: {texto}"
)
return resp.text.strip().capitalize()

df["Sentimento"] = df["Review Text"].apply(classificar_sentimento_llm)

df.to_csv("Reviews_Classificados.csv", encoding="utf-8", index=False)

print("Arquivo Reviews_Classificados.csv criado com sucesso!")

1 resposta

Olá, Penha! Como vai?

Parabéns pela realização da atividade!

Você conseguiu integrar muito bem duas abordagens diferentes para análise de sentimentos: primeiro uma função baseada em regras simples e depois a utilização de um modelo de IA para classificação. Além disso, estruturou o fluxo completo de leitura, processamento e exportação dos dados em CSV, garantindo clareza e aplicabilidade prática.

Se quiser aprofundar ainda mais, algumas boas práticas são:

  • Comparar resultados: verificar diferenças entre a classificação por regras e a feita pelo modelo de IA.
  • Adicionar métricas: calcular a porcentagem de cada tipo de sentimento para enriquecer a análise.
  • Visualizar dados: criar gráficos com matplotlib ou seaborn para representar a distribuição dos sentimentos.

Ah uma pergunta: O que você gostaria de explorar mais agora, tornar essa análise mais visual com gráficos ou expandir para trabalhar com grandes volumes de resenhas usando técnicas de NLP?

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!