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

Dúvida em Criar Data Frame vazio

Bom dia!

Fiz todos os passos da aula e o gráfico saiu conforme a aula:

dados_new = pd.DataFrame()
for tipo in grupo_tipo.groups.keys():
    eh_tipo = dados['Tipo'] == tipo
    eh_dentro_limite = (dados['Valor'] >= limite_inferior[tipo]) & (dados['Valor'] <= limite_superior[tipo])
    selecao = eh_tipo & eh_dentro_limite
    dados_selecao = dados[selecao]
    dados_new = pd.concat([dados_new, dados_selecao])

![](Gráfico conforme a Aula )

Minha dúvida é o seguinte: eu fiz o código sem criar um Data Frame vazio, e o gráfico veio muito diferente. Por que isso?


for tipo in grupo_tipo.groups.keys():
    eh_tipo = dados['Tipo'] == tipo
    eh_dentro_limite = (dados['Valor'] >= limite_inferior[tipo]) & (dados['Valor'] <= limite_superior[tipo])
    selecao = eh_tipo & eh_dentro_limite
    dados_selecao = dados[selecao]
    dados_new = pd.concat([dados_new, dados_selecao])

![](Insira aqui a descrição dessa imagem para ajudar na acessibilidade )

Gostaria de entender melhor a diferença pois me preocupa gerar um gráfico errado considerando-o como certo.

2 respostas
solução!

Olá Flávio, tudo bem? Espero que sim!

Como você já havia executado o código anterior, criando um DataFrame vazio, as informações ficaram salvas no DataFrame dados_new.

Ao executar o código sem a criação do DataFrame, você irá adicionar as informações duplicadas no dados_new, gerando um DataFrame maior com as informações repetidas.

O segundo código não seria possível ser executado sem o primeiro, uma vez que não existiria o DataFrame dados_new. Ao colocar a linha de criação do DataFrame, você garante que esse DataFrame será completamente zerado, uma vez que sobrescreveu um DataFrame novo na variável e geraria o gráfico correto.

Bons estudos!

Show!!! Muito bem explicado! Obrigado!