Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Resolução do Desafio

Eu realizei o desafio e queria saber se há algo que pode ser melhorado (Obs: Para fazer a consulta'query' precisei transformar o arquivo em DataFrame)

local_arquivo_desafio = '/FileStore/relatorio_inscricao_dados_abertos_fies_22021.csv'

import pyspark.pandas as ps

df_desafio = ps.read_csv(local_arquivo_desafio, index_col= 'ID do estudante', sep=';')

df_desafio = ps.DataFrame(df_desafio)

# Exclusão de valores NaN
df_desafio.dropna(inplace=True)

query_propocao = ps.sql('''
    SELECT Sexo, COUNT(Sexo) AS Qtd_proporcao
    FROM {DF}
    GROUP BY sexo
''', DF=df_desafio)

query_propocao.plot.bar(x='Sexo', y= 'Qtd_proporcao')

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Ei! Tudo bem?

O seu código está excelente para alcançar o objetivo proposto, parabéns!
Você soube usar o PySpark Pandas de forma eficaz para ler o arquivo, manipular o DataFrame (com dropna), e principalmente, utilizar a funcionalidade ps.sql para fazer a agregação. Isso demonstra um bom domínio das ferramentas.

No PySpark (e Pandas), se você vai converter o resultado de volta para plotagem, o uso do método to_pandas() para gráficos mais complexos é uma boa prática para garantir a compatibilidade total de bibliotecas de visualização como Matplotlib/Seaborn/Plotly. Como você usou a plotagem nativa do PySpark Pandas (query_propocao.plot.bar), funcionou perfeitamente, mas é algo para ter em mente!

Continue assim, o domínio das ferramentas de manipulação de dados é fundamental!

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