Solucionado (ver solução)

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!

Solucionado
(ver solução)
1
resposta

[Projeto] pyrton

import pandas as pd

==================================================

1. Criar DataFrame com 5 colunas

==================================================

dados = {
"nome_produto": [
"Notebook",
"Smartphone",
"Geladeira",
"Fone Bluetooth",
"Micro-ondas"
],
"categoria": [
"eletrônicos",
"eletrônicos",
"eletrodomésticos",
"eletrônicos",
"eletrodomésticos"
],
"preco": [3500, 2500, 4200, 250, 800],
"avaliacao": [4.8, 4.5, 3.9, 1.8, 1.5],
"itens_vendidos": [150, 300, 80, 500, 120]
}

df = pd.DataFrame(dados)

print("DataFrame completo:")
print(df)

==================================================

2. Importar CSV

==================================================

Exemplo:

df_csv = pd.read_csv("produtos.csv")

==================================================

3. Exibir DataFrame e Head

==================================================

print("\nPrimeiras linhas:")
print(df.head())

==================================================

4. Selecionar coluna específica

==================================================

print("\nColuna categoria:")
print(df["categoria"])

==================================================

5. Valores únicos

==================================================

print("\nCategorias únicas:")
print(df["categoria"].unique())

==================================================

6. Filtro categoria eletrônicos

==================================================

eletronicos = df[df["categoria"] == "eletrônicos"]

print("\nProdutos eletrônicos:")
print(eletronicos)

==================================================

7. Avaliação menor que 2.0

==================================================

avaliacao_baixa = df[df["avaliacao"] < 2.0]

print("\nProdutos com avaliação abaixo de 2.0:")
print(avaliacao_baixa)

==================================================

8. Combinação de filtros

==================================================

filtro_combinado = df[
(df["categoria"] == "eletrônicos") &
(df["preco"] < 3000)
]

print("\nEletrônicos com preço abaixo de 3000:")
print(filtro_combinado)

==================================================

9. Utilizando iloc

==================================================

print("\nPrimeira linha usando iloc:")
print(df.iloc[0])

print("\nLinhas 1 a 3:")
print(df.iloc[1:4])

==================================================

10. Utilizando loc

==================================================

df_loc = df.set_index("nome_produto")

print("\nAcessando Notebook com loc:")
print(df_loc.loc["Notebook"])

==================================================

11. Classificação de sentimentos com LLM

==================================================

reviews = pd.DataFrame({
"feedback": [
"Produto excelente, gostei muito!",
"Péssima qualidade, não recomendo.",
"Entrega rápida e produto bom.",
"Muito ruim, veio com defeito.",
"Atendeu minhas expectativas."
]
})

Simulação de análise de sentimento

def classificar_sentimento(texto):

texto = texto.lower()

positivos = [
    "excelente",
    "gostei",
    "bom",
    "rápida",
    "expectativas"
]

negativos = [
    "péssima",
    "ruim",
    "defeito",
    "não recomendo"
]

for palavra in positivos:
    if palavra in texto:
        return "Positivo"

for palavra in negativos:
    if palavra in texto:
        return "Negativo"

return "Neutro"

reviews["sentimento"] = reviews["feedback"].apply(
classificar_sentimento
)

print("\nReviews classificados:")
print(reviews)

1 resposta
solução!

DataFrame completo:
nome_produto categoria preco avaliacao itens_vendidos
0 Notebook eletrônicos 3500 4.8 150
1 Smartphone eletrônicos 2500 4.5 300
2 Geladeira eletrodomésticos 4200 3.9 80
3 Fone Bluetooth eletrônicos 250 1.8 500
4 Micro-ondas eletrodomésticos 800 1.5 120

Primeiras linhas:
nome_produto categoria preco avaliacao itens_vendidos
0 Notebook eletrônicos 3500 4.8 150
1 Smartphone eletrônicos 2500 4.5 300
2 Geladeira eletrodomésticos 4200 3.9 80
3 Fone Bluetooth eletrônicos 250 1.8 500
4 Micro-ondas eletrodomésticos 800 1.5 120

Coluna categoria:
0 eletrônicos
1 eletrônicos
2 eletrodomésticos
3 eletrônicos
4 eletrodomésticos
Name: categoria, dtype: object

Categorias únicas:
['eletrônicos' 'eletrodomésticos']

Produtos eletrônicos:
nome_produto categoria preco avaliacao itens_vendidos
0 Notebook eletrônicos 3500 4.8 150
1 Smartphone eletrônicos 2500 4.5 300
3 Fone Bluetooth eletrônicos 250 1.8 500

Produtos com avaliação abaixo de 2.0:
nome_produto categoria preco avaliacao itens_vendidos
3 Fone Bluetooth eletrônicos 250 1.8 500
4 Micro-ondas eletrodomésticos 800 1.5 120

Eletrônicos com preço abaixo de 3000:
nome_produto categoria preco avaliacao itens_vendidos
1 Smartphone eletrônicos 2500 4.5 300
3 Fone Bluetooth eletrônicos 250 1.8 500

Primeira linha usando iloc:
nome_produto Notebook
categoria eletrônicos
preco 3500
avaliacao 4.8
itens_vendidos 150
Name: 0, dtype: object

Linhas 1 a 3:
nome_produto categoria preco avaliacao itens_vendidos
1 Smartphone eletrônicos 2500 4.5 300
2 Geladeira eletrodomésticos 4200 3.9 80
3 Fone Bluetooth eletrônicos 250 1.8 500

Acessando Notebook com loc:
categoria eletrônicos
preco 3500
avaliacao 4.8
itens_vendidos 150
Name: Notebook, dtype: object

Reviews classificados:
feedback sentimento
0 Produto excelente, gostei muito! Positivo
1 Péssima qualidade, não recomendo. Negativo
2 Entrega rápida e produto bom. Positivo
3 Muito ruim, veio com defeito. Negativo
4 Atendeu minhas expectativas. Positivo