0
respostas

Ajuste no exercicio - Mãos na massa: utilizando o modelo salvo

Boa tarde, apenas um pequeno ajuste para quem se deparou com essa saida no exercicio final da aula:

/usr/local/lib/python3.11/dist-packages/sklearn/utils/validation.py:2739: UserWarning: X does not have valid feature names, but RandomForestRegressor was fitted with feature names
  warnings.warn(
np.float64(36.740529995725694)

Este erro ocorre pois durante o treinamento, o modelo foi ajustado com um DataFrame que tinha nomes de colunas, mas passamos uma lista simples sem esses nomes. Esse aviso não impede a execução, mas o ideal seria passar a nova amostra como um DataFrame com os mesmos nomes de colunas do conjunto de treino.

Fiz um novo codigo ajustando os nomes das features e gerando um novo DataFrame para que o aviso nao apareça:

# Dicionário com os dados da nova amostra, com nomes de features
nova_amostra = {
    'schengen': 0,
    'arrival_time': 10.8941,
    'is_holiday': 0,
    'is_weekend': 0,
    'airline_BZ': 0,
    'airline_MM': 0,
    'airline_YE': 1,
    'aircraft_type_Airbus A320': 1,
    'aircraft_type_Airbus A330': 0,
    'aircraft_type_Boeing 737': 0,
    'aircraft_type_Boeing 777': 0,
    'aircraft_type_Boeing 787': 0,
    'aircraft_type_Embraer E175': 0
}

# Transformando o dicionário em DataFrame
df_nova_amostra = pd.DataFrame([nova_amostra])

#Previsão
model.predict(df_nova_amostra)[0]

Espero ter ajudado alguem que possa ter se deparado com esse Warning!