Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Plotando boxplot

Estou tentando plotar um boxplot com o total de votos de todas as categorias de filmes. Porém, meu dataset possui várias linhas com valor "0". Não consigo eliminar essas linhas com dropna() e verificando os valores nulos, é possível ver que não há nenhum no dataset.

4 respostas

Olá Fábio,

Não entendi muito bem o cenário, mas acho que nesse caso você pode fazer uma seleção para pegar os valores diferentes de 0

Pode explicar melhor o que você tem até agora e o que você quer fazer?

Eu possuo um dataset em que as colunas são os gêneros dos filmes (Adventure, Horror, Action, etc...) e as linhas são os filmes (1, 2, 3, etc). Cada filme tem um ou mais gêneros, a coluna em que aquele filme não faz parte do gênero está numerado com "0".Eu consigo pegar a seleção dos valores diferentes de "0", selecionando uma coluna por vez. Porém o exercício pede para plotar em um boxplot todos os gêneros juntos.

solução!

Entendi, tô lembrando dessa questão do projeto.

Nesse caso o melhor ainda é pegar a seleção para cada gênero separado. Mesmo que seja um único gráfico, são vários boxplots diferentes dentro desse gráfico, um para cada gênero.

Exemplo para pegar o total de votos de Action:

total_action = filmes.query('Action != 0')['total_de_votos']
# Ou
total_action = filmes.query('Action == 1')['total_de_votos']

Lembrando que você pode criar vários boxplots dentro do mesmo gráfico passando os dados em um array:

plt.boxplot([total_action, total_drama, total_horror], labels=['Ação', 'Drama', 'Horror'])

Isso que eu mostrei já funciona, mas é bem manual fazer para todas as categorias, fica agora o desafio para você melhorar isso utilizando um for ou levar ao extremo que é fazer isso em uma única linha com o list comprehension do python.

Evitei entrar muito nos detalhes pra não te dar direto a resposta fácil de como fazer, mas se ainda tiver alguma dúvida é só falar!

Era sobre isso mesmo a dúvida ou eu entendi errado?

Perfeito, Lucas. O list comprehension acho que era a solução que eu estava procurando. Vou seguir a partir deste ponto. Muito obrigado!