1
resposta

Definir a média das colunas númericas para cada tipo de motor

Olá

Gostaria de entender como eu poderia criar um dataframe que contenha no index o motor, e médias das colunas númericas (ano, quilometragem e valor) para cada um deles.

Por exemplo: Vi que é possível agrupar os motores pelo tipo utilizando o groupby, porém, gostaria de transformar esse groupby em um dataframe que contenha a média das colunas númericas para cada motor.

Como poderia ser feito?

1 resposta

Olá, Gabriel! Tudo bom? Espero que sim!

Como você bem comentou, pode utilizar o groupby com uma seleção das colunas numéricas e realizar a média de cada uma delas.

import pandas as pd
dataset = pd.read_csv('data/db.csv', sep = ';')
dataset.groupby(by='Motor')[['Ano', 'Quilometragem', 'Valor']].mean()
MotorAnoQuilometragemValor
Motor 1.0 8v2004.9253586.397833
Motor 1.8 16v2010.3939850.283872.5
Motor 2.0 16v200566863.994041.3
Motor 2.4 Turbo2010.787847.599105
Motor 3.0 32v2011.6359909.693772.8
Motor 4.0 Turbo2008.0868533.4102304
Motor 5.0 V8 Bi-Turbo2006.8639469.593346.2
Motor Diesel2007.3858930.8107180
Motor Diesel V62001.4356360.5104054
Motor Diesel V82008.9561855.6103581
Motor V62007.0558376.7107472
Motor V82008.4665207.597934.8

Talvez a coluna de Ano não fique tão interessante nesse formato, mas podemos fazer um agrupamento por multi-index usando as décadas (ano a ano fica com bastante informações ainda) para representar motores fabricados em determinados períodos e seus respectivos valores numéricos.

anos_em_decadas = list(range(1910,2031,10))
dataset['Decada_Motor'] = pd.cut(dataset['Ano'], bins=anos_em_decadas)

E agora aplicando o group by com múltiplos índices, extraindo a média e excluindo os períodos sem informação útil.

dataset.groupby(by=['Motor', 'Decada_Motor'])[['Quilometragem', 'Valor']].mean().dropna()

Se ainda tiver alguma dúvida, estou por aqui. Ótimos estudos e grande abraço!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Não é necessário fechar o tópico, outras pessoas podem ser ajudadas por ele :D

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software