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

Erro not in index

Na execução do DataFrame abaixo:

dados_aux = pd.DataFrame(dados[['Tipo Agregado', 'Valor m2', 'Valor Bruto', 'Valor Bruto m2']])


Está retornando o seguinte erro:

KeyError: "['Tipo Agregado'] not in index"

6 respostas

Olá Luiz, tudo bem?

Tente assim:

dados_aux = pd.DataFrame(dados[['Valor Agregado', 'Valor m2', 'Valor Bruto', 'Valor Bruto m2']])

Fico no aguardo para saber se funcionou.

Boa tarde David!

Ainda não funcionou. Apresentou a seguinte mensagem de erro:

KeyError: "['Valor Agregado'] not in index"

Olá Luiz, verifica qual é o retorno do comando abaixo e manda aqui:

dados.columns

Segue ...

Index(['Tipo', 'Bairro', 'Quartos', 'Vagas', 'Suites', 'Area', 'Valor',
       'Condominio', 'IPTU', 'Valor Bruto', 'Valor m2', 'Valor Bruto m2',
       'Tipo Agregado '],
      dtype='object')
solução!

Esse comando lista os nomes das colunas, pelo retorno dá pra perceber que a chave é 'Tipo Agregado ' com o espaço no final.

Você pode então acessar assim (com o espaço):

dados_aux = pd.DataFrame(dados[['Tipo Agregado ', 'Valor m2', 'Valor Bruto', 'Valor Bruto m2']])

Mas a melhor solução é ir na definição e corrigir o nome removendo o espaço:

dados['Tipo Agregado'] = dados['Tipo'].apply(lambda x: 'Casa' if x in casa else 'Apartamento')

O próprio código do curso está com esse espaço na transcrição, então eu sugeri a correção.

Bom dia!

Deu certo!

Muito Obrigado.