Aula 4
Importe novamente o arquivo alunos.csv para realizar os desafios abaixo.
# Importando novamente os dados
import pandas as pd
dados_alunos = pd.read_csv('https://raw.githubusercontent.com/alura-cursos/pandas-conhecendo-a-biblioteca/main/desafios/alunos.csv')
dados_alunos
dados_alunos['Notas'].fillna(0, inplace=True)
dados_alunos
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
dados_alunos['Pontos_extras'] = dados_alunos['Notas'] * 0.4 #não quis usar apply forma que esta aqui é vetorizada, mais eficiente
dados_alunos
Desafio 2
Crie mais uma coluna, chamada "Notas_finais" que possua as notas de cada aluno somada com os pontos extras
dados_alunos['Notas_finais'] = dados_alunos['Notas'] + dados_alunos['Pontos_extras']
dados_alunos
Desafio 3
Como os alunos ganharam pontos extras, alguns 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).
#este eu fiz sem usar apply, utilizei uma opção masis performatica, só porqeu aprendi isso queria praticar
import numpy as np
dados_alunos['Aprovado_final'] = np.where(dados_alunos['Notas_finais'] >= 6, True, False)
dados_alunos
Desafio 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
selecao = dados_alunos.query('Aprovado == False and Aprovado_final == True')
selecao
dados_alunos.to_csv('alunos_final.csv', index=False, sep=';')