1
resposta

[Projeto] 07 Desafio:

  1. Os alunos participaram de uma atividade extracurricular e ganharam pontos extras. Esses pontos extras correspondem a 40% da nota atual de cada um deles. Com base nisso, crie uma coluna chamada "Pontos_extras" que contenha os pontos extras de cada aluno, ou seja, 40% da nota atual deles.
    resposta:

Criar a coluna "Pontos_extras" (40% da nota atual)

df['Pontos_extras'] = df['Notas'] * 0.4

  1. Crie mais uma coluna, chamada "Notas_finais" que possua as notas de cada aluno somada com os pontos extras.
    resposta:

Criar a coluna "Notas_finais" (Soma das notas com pontos extras)

df['Notas_finais'] = df['Notas'] + df['Pontos_extras']

  1. Como houve uma pontuação extra, alguns alunos que não tinham sido aprovados antes podem ter sido aprovados agora. Com base nisso, crie uma coluna chamada "Aprovado_final" com os seguintes valores:
    True: caso o aluno esteja aprovado (nota final deve ser maior ou igual a 6);
    False: caso o aluno esteja reprovado (nota final deve ser menor que 6).
    resposta:

Criar a coluna "Aprovado_final" (Nota final >= 6)

df['Aprovado_final'] = df['Notas_finais'] >= 6
4) Faça uma seleção e verifique quais alunos não tinham sido aprovados anteriormente, mas foram aprovados após a soma dos pontos extras.
resposta:

Seleção: Alunos que eram False e viraram True

Lógica: (Não aprovado anteriormente) E (Aprovado agora)

selecao = (df['Aprovado'] == False) & (df['Aprovado_final'] == True)
alunos_beneficiados = df[selecao]

Visualização do resultado

print(alunos_beneficiados)

codigo fonte:
import pandas as pd

Carregamento (Assumindo que o tratamento de nulos já foi feito na aula anterior)

url = 'https://raw.githubusercontent.com/alura-cursos/pandas-conhecendo-a-biblioteca/main/desafios/alunos.csv'
df = pd.read_csv(url)
df.fillna(0, inplace=True) # Essencial para não gerar erros no cálculo

1) Criar a coluna "Pontos_extras" (40% da nota atual)

df['Pontos_extras'] = df['Notas'] * 0.4

2) Criar a coluna "Notas_finais" (Soma das notas com pontos extras)

df['Notas_finais'] = df['Notas'] + df['Pontos_extras']

3) Criar a coluna "Aprovado_final" (Nota final >= 6)

df['Aprovado_final'] = df['Notas_finais'] >= 6

4) Seleção: Alunos que eram False e viraram True

Lógica: (Não aprovado anteriormente) E (Aprovado agora)

selecao = (df['Aprovado'] == False) & (df['Aprovado_final'] == True)
alunos_beneficiados = df[selecao]

Visualização do resultado

print(alunos_beneficiados)

1 resposta

Oi, Moacir! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Você estruturou muito bem a solução, criando cada coluna de forma clara e organizada. O uso das operações com DataFrame para calcular os pontos extras e depois reutilizar esses dados na nota final ficou bem consistente. Continue assim!

Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!

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