Desafio: Previsão de Preços de Casas
Agora você irá construir um modelo de regressão baseado em um exemplo do mundo real. Você possui um arquivo, houses_simple.csv
, que contém informações sobre preços de casas, tendo a área como uma das características.
import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/houses_simple.csv') print(df.head())
O próximo passo é atribuir variáveis e visualizar o conjunto de dados:
import pandas as pd import matplotlib.pyplot as plt df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/houses_simple.csv') X = df['square_feet'] y = df['price'] plt.scatter(X, y, alpha=0.5) plt.show()
No exemplo com a altura de uma pessoa, era muito mais fácil imaginar uma linha ajustando bem os dados.
Mas agora nossos dados apresentam muito mais variância, pois o alvo depende fortemente de muitos outros fatores, como idade, localização, interior, etc.
De qualquer forma, o objetivo é construir a linha que melhor se ajusta aos dados disponíveis; ela mostrará a tendência. A classe OLS
deve ser utilizada para isso. Em breve, aprenderemos como adicionar mais variáveis, o que tornará a previsão mais precisa!
Swipe to start coding
- Atribua a coluna
'price'
dedf
à variávely
. - Crie a matriz
X_tilde
utilizando a funçãoadd_constant()
dostatsmodels
(importado comosm
). - Inicialize o objeto
OLS
e treine-o. - Pré-processe o array
X_new
da mesma forma queX
. - Realize a previsão do alvo para a matriz
X_new_tilde
.
Solução
Obrigado pelo seu feedback!