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

km_media não atualizando no DataFrame

Realizei a atividade e encontrei o resultado, porém, estou com duas dúvidas.

  • Referente a linha de código:
result.update({ item[0]: item[1] })

Como esta linha engloba todos os items considerando vai de 0 até 1?

  • Fiz um teste alterando o ano de 2019 para 2023 (ano atual). O km_media foi alterado conforme o ano, porém, a tabela final do DataFrame não se alterou, mantendo o km_media visto para 2019.
dados = {
    'Crossfox': {'km': 35000, 'ano': 2005}, 
    'DS5': {'km': 17000, 'ano': 2015}, 
    'Fusca': {'km': 130000, 'ano': 1979}, 
    'Jetta': {'km': 56000, 'ano': 2011}, 
    'Passat': {'km': 62000, 'ano': 1999}
}
def km_media(dataset, ano_atual):
    result = {}
    for item in dataset.items():
        media = item[1]['km'] / (ano_atual - item[1]['ano'])
        item[1].update({ 'km_media': media })
        result.update({ item[0]: item[1] })

    return result
km_media(dados, 2023)
import pandas as pd
carros = pd.DataFrame(km_media(dados, 2019)).T
carros

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

2 respostas
solução!

Olá,

Após atualizar o seguinte código:

km_media(dados, 2023)

este vai trazer a média de KM.

Precisa atualizar o "ano" deste também:

import pandas as pd
carros = pd.DataFrame(km_media(dados, 2019)).T

Este vai criar o Data Frame com os dados que você quer

Muito obrigado! Realmente, me esqueci do ano nesse código, pensei que estaríamos utilizando apenas o ano no outro código.