1
resposta

Desafio: bora praticar?

import pandas as al
url = 'https://raw.githubusercontent.com/alura-cursos/pandas-conhecendo-a-biblioteca/main/desafios/alunos.csv'
al.read_csv(url)

alunos.head()

alunos['Pontos_extras'] = alunos['Notas'].apply(lambda x: x * 0.4)
alunos.head()

alunos['Notas_finais'] = alunos['Notas'] + alunos['Pontos_extras']
alunos.head()

alunos['Aprovado_final'] = alunos['Notas_finais'].apply(lambda x: x >= 6)
alunos.head()

nao_aprovados_antes = alunos.query('Aprovado == False')


aprovados_agora = nao_aprovados_antes.query('Aprovado_final == True')


print('Alunos que não estavam aprovados antes:')
print(nao_aprovados_antes[['Nome', 'Notas', 'Pontos_extras', 'Notas_finais', 'Aprovado_final']])

alunos = alunos.fillna(0)

alunos
1 resposta

Olá! Tudo bem?

Parabéns! Continue resolvendo os desafios e compartilhando com a comunidade Alura.

Percebi que você dominou o uso de apply(), aplicou muito bem o query() para filtrar os dados e ainda demonstrou compreender a relevância de fillna() para tratamento de valores ausentes.

Uma sugestão interessante é poder usar map() para simplificar algumas operações em colunas numéricas. Veja só:

alunos['Pontos_extras'] = alunos['Notas'].map(lambda x: x * 0.4)

Essa abordagem também ajuda a manter o código mais limpo e otimizado.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

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!