Alura > Cursos de Data Science > Cursos de Data Science > Conteúdos de Data Science > Primeiras aulas do curso Data Science: testando relações com Regressão Linear

Data Science: testando relações com Regressão Linear

Ajustando uma reta - Apresentação

Você domina a análise exploratória dos dados? Sabe que é possível tirar conclusões válidas de várias amostras?

Eu sou a Ana Duarte, instrutora na Escola de Dados, e te convido a dar um passo mais profundo nos conceitos de Data Science!

Audiodescrição: Ana se descreve como uma mulher de pele clara, olhos castanhos e cabelos castanho-claros. Usa uma camisa preta com o logotipo da escola de dados em verde, piercing no septo e anéis nos dedos. Está nos estúdios da Alura, com um fundo branco iluminado em gradiente verde e lilás, uma estante preta com enfeites à esquerda da instrutora, e uma planta à direita.

O que vamos aprender?

Neste curso, vamos precificar o valor de venda de várias casas, utilizando a regressão linear a nosso favor. Além disso, entenderemos quais fatores melhor explicam o valor dessas casas. Essa metodologia irá nos ajudar a ajustar o primeiro modelo de machine learning.

Você topa esse desafio? Te encontro nos próximos passos!

Ajustando uma reta - Conhecendo os dados

Vamos iniciar nosso projeto? Para começar, precisamos identificar quais fatores contribuem para estabelecer o preço de venda de uma casa. Para isso, é necessário entender uma base de dados do mercado imobiliário e identificar quais fatores estão disponíveis para nossa análise.

Conhecendo os dados

Começaremos com o Google Colab aberto para ler e interpretar os dados. O link do notebook está disponibilizado na atividade Preparando o ambiente.

Carregando a base de dados

Na seção "Conhecendo os dados", daremos início à leitura dos dados. No menu lateral esquerdo da tela, encontramos um ícone de pasta ("Arquivos") na última posição da lista. Vamos clicar nele para carregar os dados, os quais também estão disponíveis para download.

Para carregar os dados, basta arrastar o arquivo Preços_de_casas.csv para a seção "Arquivos". Após finalizar, vamos clicar no menu kebab à direita do arquivo e selecionar "Copiar caminho".

Importando a biblioteca Pandas

Para ler os dados no Google Colab, precisamos importar uma biblioteca que irá nos auxiliar. Em uma nova célula, vamos digitar o comando import pandas as pd, adicionando um apelido para a biblioteca.

import pandas as pd

Lendo os dados

Agora que já importamos, podemos ler os dados: em uma nova célula, definiremos dados igual ao método pd.read_csv(), que será responsável por ler o arquivo CSV que carregamos. Para isso, abrimos aspas duplas entre parênteses e colamos o caminho copiado anteriormente.

# Lendo dados
dados = pd.read_csv("/content/Preços_de_casas.csv")

Visualizando os fatores coletados

Ao executar essa célula, os dados serão lidos corretamente. Porém, ainda precisamos visualizar os fatores coletados das casas. Sendo assim, vamos utilizar o método dados.info().

# Quais os fatores coletados?
dados.info()

Como retorno, temos várias informações:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1438 entries, 0 to 1437
Data columns (total 8 columns):
 #   Column                          Non-Null Count  Dtype  
---  ------                          --------------  -----  
 0   Id                              1438 non-null   int64  
 1   area_primeiro_andar             1438 non-null   float64
 2   existe_segundo_andar            1438 non-null   int64  
 3   area_segundo_andar              1438 non-null   float64
 4   quantidade_banheiros            1438 non-null   int64  
 5   capacidade_carros_garagem       1438 non-null   int64  
 6   qualidade_da_cozinha_Excelente  1438 non-null   int64  
 7   preco_de_venda                  1438 non-null   float64
dtypes: float64(3), int64(5)
memory usage: 90.0 KB

Note que são 1.438 casas diferentes, organizadas em 8 aspectos separados por colunas. Dessas 8 colunas, podemos identificar o ID (Id), ou seja, o identificador único de cada casa. Além disso, temos dados sobre:

Ao final, temos o preço de venda (preco_de_venda) de cada uma das casas. A partir disso, precisamos entender o seguinte: esses aspectos conseguem nos ajudar a estipular o preço de venda?

Removendo colunas

Quando observamos esses dados, o ID, por exemplo, talvez não seja algo tão explicativo, então podemos retirá-lo. Para isso, usaremos o método dados.drop() recebendo a coluna Id entre parênteses no atributo columns. Em sequência, atribuiremos isso a dados.

dados = dados.drop(columns = "Id")

Feito isso, teremos apenas informações sobre características e preço da casa.

A base de dados que utilizamos foi simplificada a partir da base House Prices do Kaggle. Fizemos algumas alterações para reais e metros quadrados, para evitar barreiras no seu aprendizado.

Conclusão

Agora que conhecemos os fatores da base de dados, podemos nos questionar: quais desses fatores estão correlacionados ao preço de venda das casas?

Ajustando uma reta - Fatores correlacionados ao preço

Agora que conhecemos alguns fatores que podem estar atrelados ao preço de venda das casas, podemos verificar quão correlacionados eles estão ao preço.

Fatores correlacionados ao preço

Para entender isso e medir essa correlação, podemos usar a métrica de correlação. No Google Collab, conseguimos calcular essa métrica.

Calculando a métrica de correlação

Com o notebook aberto, vamos digitar o seguinte código em uma nova célula:

# Correlação
corr = dados.corr()

Acessando a métrica de correção

Após executar essa célula, vamos adicionar uma nova e selecionar essa correlação (corr) apenas com preco_de_venda. Dessa forma, teremos o seguinte código:

corr['preco_de_venda']

Como retorno, para cada uma das características, teremos a correlação com o preço de venda:

area_primeiro_andar               0.616557
existe_segundo_andar              0.138541
area_segundo_andar                0.305311
quantidade_banheiros              0.563132
capacidade_carros_garagem         0.640214
qualidade_da_cozinha_Excelente    0.496223
preco_de_venda                    1.000000
Name: preco_de_venda, dtype: float64

A que precisamos nos atentar com essa métrica? Há dois pontos principais:

  1. A intensidade;
  2. E a direção.

A intensidade está muito ligada à magnitude, isto é, ao número apresentado no retorno. Quanto maior esse número, mais correlacionada está a característica com o preço de venda.

Essa métrica varia entre -1 e 1. Portanto, quanto mais próximas desses extremos, mais correlacionadas estão as variáveis, isto é, os aspectos em análise.

Vamos pensar em algumas hipóteses antes de observarmos os números?

Formulando hipóteses

Uma primeira hipótese possível seria a seguinte:

Uma casa maior pode custar mais caro.

A partir disso, podemos entender quão correlacionados esses fatores estão com essa métrica. Com o output dessa correlação em mãos, podemos focar na área do primeiro andar (area_primeiro_andar) em relação ao preço de venda (preco_de_venda).

area_primeiro_andar               0.616557
existe_segundo_andar              0.138541
area_segundo_andar                0.305311
quantidade_banheiros              0.563132
capacidade_carros_garagem         0.640214
qualidade_da_cozinha_Excelente    0.496223
preco_de_venda                    1.000000

Identificamos uma correlação de 0.61, aproximadamente, uma correlação moderada, bem próxima de 1. Porém, também podemos focar em outros aspectos não tão correlacionados, como, por exemplo, a área do segundo andar (area_segundo_andar), que está em 0.30, aproximadamente. Sendo assim, temos uma correlação um pouco menor quando falamos sobre o segundo andar.

Outro aspecto a ser observado é o sinal positivo (+) ou negativo (-). No exemplo anterior, todos foram positivos, então todos podem estar correlacionados positivamente. Isso significa que quanto maior a área do primeiro andar (area_primeiro_andar), maior o preço de venda (preco_de_venda).

Conclusão

Deixaremos uma atividade para você treinar a interpretação da correlação, muito importante para a análise prévia, quando entendemos quais fatores podem contribuir para a explicação do preço de venda, no nosso caso.

Agora que identificamos que a área do primeiro andar tem uma correlação de 0.61 com o preço de venda, será que podemos visualizar essa correlação? Existe alguma forma de entender isso de forma visual?

Sobre o curso Data Science: testando relações com Regressão Linear

O curso Data Science: testando relações com Regressão Linear possui 109 minutos de vídeos, em um total de 52 atividades. Gostou? Conheça nossos outros cursos de Data Science em Data Science, ou leia nossos artigos de Data Science.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda Data Science acessando integralmente esse e outros cursos, comece hoje!

Conheça os Planos para Empresas