Estratégia de defesa da corretora Easton Imobiliária


1 INTRODUÇÃO

"Dois dias atrás, Sam Easton recebeu uma carta de entrega especial do presidente do Conselho Local dos Corretores de Imóveis. O Conselho havia recebido reclamações de duas pessoas que venderam suas casas através da Easton Imobiliária no mês passado. O presidente do Conselho informou Sam dessas queixas, dando-lhe a oportunidade de responder.

“As duas pessoas alegaram que a Easton Imobiliária havia vendido suas casas por um preço baixo para acelerar suas vendas. A primeira casa é em Arlington, tem 4 anos, tem 203 m² e foi vendida por 88.500 dólares. A segunda casa é em Fort Worth, tem 9 anos, tem 172 m² e foi vendida por 79.500. Ambas as casas em questão têm três quartos. As duas pessoas acreditam que eles teriam conseguido vender por um valor maior se a Easton Imobiliária tivesse fixado o verdadeiro valor de mercado das casas.”


1.1 Objetivo

O seguinte trabalha tem como objetivo apresentar um conjunto de análises estatístiscas que fundamentem a tese de defesa apresentada por Sam Easton ao Conselho Local de Corretores de Imóveis. Para tanto, os seguintes objetivos específicos serão contemplados.

  • Comprovar que a Easton Imobiliária não subvaloriza o preço de suas casas em relação às corretoras concorrentes.
  • Comprovar que as casas vendidas por USD 88500 em Arlington e USD 79500 em Fort Worth não foram subvalorizadas em relação ao mercado.


2 ANÁLISES ESTATÍSTICAS E RESULTADOS


2.1 Resposta às alegações de tendência de subvalorização de vendas pela Easton


A etapa de análise estátistica foi realizada com base no banco de dados formulado por Pat McCloskey, que fornece uma amostra representativa das vendas de imóveis realizadas na região metropolitana de Dallas-Forth Worth. Os 461 registros de vendas apresentados por esta base de dados apresentam sete informações que, para efeitos de análise, foram tratadas como variáveis estatísticas. São elas: o mês em que a venda foi realizada, o preço praticado, o tamanho do imóvel em metros quadrados, o número de quartos, a idade em anos, a corretora que efetuou a venda, e a localização da residência.

Inicialmente, foi montada uma matriz de correlação, com o objetivo de identificar as correlações bivariadas existentes entre as variáveis em análise. A figura 1 ilustra a matriz de correlação considerando todas as vendas realizadas na região nos últimos quatro meses.

## corrplot 0.84 loaded

Figura 1 - Matriz de correlação das variáveis em análise


Com base nos coeficientes de correlação apresentados pela figura 1, nota-se que o preço dos imóveis está fortemente correlacionado com as variáveis tamanho e localização, sendo esta correlação positiva em relação ao tamanho e negativa em relação a localização. Assim, é válido destacar que os preços das residências apresentam uma tendência de valorição a medida que que seu tamanho aumenta, e de desvalorização a medida que as vendas ocorrem em locais mais distantes do município de Dallas. Este comportamento também pode ser observado através das figuras 2 e 3, que apresentam respectivamente os gráficos boxplot do preço em função do tamanho e da localização. Outra observação relevante diz respeito a idade dos imóveis, que não geram qualquer impacto em seus preços.

## Warning: Unknown or uninitialised column: 'Classe_Tam'.

Figura 2 - Boxplots do Preço em relação às Classes de Tamanho das residências (intervalos de 40 m²)


Figura 3 - Boxplots do Preço em relação a localização das residências


A Figura 1 ainda indica uma baixa correlação entre o preço das residências e a corretora responsável por efetuar a venda. Inicialmente, esta informação serve como um forte indício de que a Easton Imobiliária não vem subvalorizando suas vendas em relação ao mercado. Analisando os boxplots e os resumos numéricos apresentados no Apêndice I, é possível notar que, em todas as localidades, a mediana dos preços por metro quadrado praticados pela Easton apresenta um valor similar àquele fixado pelas demais empresas do mercado. Esta constatação é outro sinal importante de que, durante o período de crise no mercado imobiliário, a Easton Imobiliaria não praticou a subvalorização de suas vendas em relação às demais corretoras.

Após a realização destas análises, construiu-se um modelo de regressão linear múltipla, a fim de averiguar mais precisamente a relevância de cada uma das variáveis no preço das vendas realizadas na região. Para tanto, foi adotado um nível de significância de 5%, indicando que as varáveis que apresentarem um p-valor superior a 0.05 não afetam na formação do preço de venda das residências. A validade do modelo foi atestada pelos testes de normalidade de Shapiro-Wilk e de homogeneidade de variâncias de Breush-Pagan. Os resultados obtidos são apresentados pelos quadros 1 e 2:


Tabela 1 - Coeficientes do modelo 1 de regressão linear multipla
## 
## Call:
## lm(formula = Preco ~ Mes + Tamanho + Quartos + Idade + Corretora + 
##     Localizacao, data = df_imobiliarias)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -21039.4  -6735.3    269.9   6600.0  26901.7 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  88957.95    3416.94  26.034   <2e-16 ***
## Mes          -4639.82     380.88 -12.182   <2e-16 ***
## Tamanho        596.59      19.41  30.739   <2e-16 ***
## Quartos       1292.25     892.95   1.447   0.1485    
## Idade         -400.26     204.84  -1.954   0.0513 .  
## Corretora    -2705.23    1436.95  -1.883   0.0604 .  
## Localizacao -19072.44     572.39 -33.321   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 9075 on 454 degrees of freedom
## Multiple R-squared:  0.8341, Adjusted R-squared:  0.832 
## F-statistic: 380.6 on 6 and 454 DF,  p-value: < 2.2e-16


Tabela 2 - Testes de normalidade e homogeneidade de variâncias sobre os resíduos do modelo de regressão linear
## 
##  Shapiro-Wilk normality test
## 
## data:  res
## W = 0.99382, p-value = 0.05744
## Loading required package: carData
## Non-constant Variance Score Test 
## Variance formula: ~ fitted.values 
## Chisquare = 1.46636, Df = 1, p = 0.22592

Os resultados apresentados pela tabela 1 indicam que três das seis variáveis não apresentam qualquer influência no preço final das vendas realizadas na região (pois apresentam p-valor > 0.05), são elas: idade, quartos e corretora. Desta maneira, é incorreto afirmar que as vendas realizadas pela Easton Imobiliária foram propositalmente desvalorizadas em relação ao mercado, visto que a variável corretora não afeta o preço final das vendas na região. Portanto, é possível concluir que a Easton Imobiliária não tem subvalorizado suas vendas em relação aos seus competidores.


2.2 Resposta às alegações de subvalorição das casas em Arlington e Fort Worth


2.2.1 1ª Etapa: Comparação entre os preços de mercado e da Easton Imobiliária para as casas dos reclamantes


Nesta etapa, deve-se comprovar que as reclamações dos dois clientes a respeito da subvalorização de suas casas são infundadas. A alegação de que os clientes conseguiriam vendas mais lucrativas caso a Easton Imobiliária fixasse o preço de mercado de ambas as residências também deve ser combatida. Os principiais indicadores da não validade destas alegações são apresentados a seguir:

  • “Sam sabia, por experiência, que as pessoas quando vão vender suas casas inevitavelmente superestimam o valor da mesma.”
  • “Sam também sabia que seus agentes não venderiam intencionalmente as casas por um preço baixo para acelerar a venda.”
  • O modelo de regressão linear apresentado anteriormente atesta que a Easton Imobiliária não afeta o preço final da venda.
  • Os clientes se basearam em um artigo no qual o preço médio foi aferido num intervalo muito longo (12 meses). Como a baixa do mercado imobiliário se deu recentemente, e os preços sofreram redução mês a mês, é possível que os preços mais altos praticados antes da crise tenham elevado o preço médio dos imóveis no período contabilizado pelo artigo. Assim, não é correto comparar o preço médio apresentado no artigo com os preços de vendas ocorridas no último mês, quando os reclamantes comercializaram seus imóveis.

As informações técnicas a respeito dos dois imóveis alvo de reclamações são ilustradas a seguir:


Casa 1:

  • Preço: USD 88500
  • Tamanho: 203 m²
  • Preço/m²: USD 435.96
  • Mês da venda: 6
  • Quartos: 3
  • Localização: 3 (Arlington)

Casa 2:

  • Preço: USD 79500
  • Tamanho: 172 m²
  • Preço/m²: USD 462.21
  • Mês da venda: 6
  • Quartos: 3
  • Localização: 2 (Fort Worth)


Primeiramente, foram construídos dois modelos de regressão linear, a fim de identificar as equações que regem a formação de preços da Easton e de suas concorrentes. Novamente, os teste de Shapiro-Wilk e Breush-Pagan foram utilizados para a validação destes modelos. Os resultados obtidos através destes testes são apresentados no Apêndice II. Adotando novamente um p-valor de 0.05, foi identificado que as variáveis idade e número de quartos não influenciam no preço de venda dos imovéis de nenhuma das corretoras. Os modelos de formação de preços adotadas pela Easton e pelas outras corretoras são apresentadas a seguir pelas equações 1 e 2:


Modelo de Easton

Preço = 97124.21 - 4005.62 x Mês + 607.30 x Tamanho - 2294.25 x Quartos - 1452.45 x Idade - 18041.82 x Localização (1)


Modelo das outras corretores

Preço = 87813.88 - 4706.85 x Mês + 591.83 x Tamanho - 1822.23 x Quartos - 259.90 x Idade - 19215.60 x Localização (2)


Em seguida, os valores de mês, tamanho, localização, quartos e idade foram referentes às casas dos reclamantes foram implementados em ambos os modelos. Adotando 95% de confiança, ficou constatada a existência de uma interseção entre grande parte dos intervalos de confiança dos dois modelos, indicando que os preços fixados pela Easton podem ser considerados iguais àqueles práticados por suas concorrentes. As tabelas 3 e 4 ilustram estas situações para os arredores da região metropolitana e para Fort Woth respectivamente.

Tabela 3 - Preços e intervalos de confiança praticados nos arredores da região metropolitana
## 
## Call:
## lm(formula = Preco ~ Mes + Tamanho + Quartos + Idade + Localizacao, 
##     data = df_outras)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -20915.7  -6646.1    272.6   6450.9  27440.2 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  87813.88    3601.20  24.385   <2e-16 ***
## Mes          -4706.85     406.24 -11.586   <2e-16 ***
## Tamanho        591.83      20.42  28.977   <2e-16 ***
## Quartos       1822.23     938.37   1.942   0.0528 .  
## Idade         -259.90     216.78  -1.199   0.2313    
## Localizacao -19215.60     602.08 -31.915   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 9137 on 409 degrees of freedom
## Multiple R-squared:  0.8332, Adjusted R-squared:  0.8312 
## F-statistic: 408.7 on 5 and 409 DF,  p-value: < 2.2e-16
## 
## Call:
## lm(formula = Preco ~ Mes + Tamanho + Quartos + Idade + Localizacao, 
##     data = df_easton)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -15790.1  -5713.5   -261.2   5019.4  15554.5 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  97124.21   11319.69   8.580 1.32e-10 ***
## Mes          -4005.62    1067.23  -3.753 0.000555 ***
## Tamanho        607.30      64.03   9.485 8.68e-12 ***
## Quartos      -2294.25    3040.90  -0.754 0.454989    
## Idade        -1452.45     653.14  -2.224 0.031874 *  
## Localizacao -18041.82    1843.35  -9.788 3.57e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8123 on 40 degrees of freedom
## Multiple R-squared:  0.8392, Adjusted R-squared:  0.8191 
## F-statistic: 41.74 on 5 and 40 DF,  p-value: 7.694e-15
## [1] "Outras Imobiliárias"
##        fit      lwr      upr
## 1 126494.9 123887.9 129101.9
## [1] "Easton"
##        fit      lwr      upr
## 1 129553.7 123382.3 135725.2
Tabela 4 - Preços e intervalos de confiança praticados em Fort Worth da região metropolitana
## [1] "Outras Imobiliárias"
##        fit      lwr      upr
## 1 126064.2 124023.7 128104.8
## [1] "Easton"
##        fit      lwr      upr
## 1 121507.1 116005.4 127008.9

Como os modelos acima apresentam cinco variáveis, suas representações gráficas não são possíveis em duas dimensões, o que dificulta a vizualização da interseção entre seus intervalos de confiança. Como alternativa para possibilitar a vizualização desta interseção, os registros inicialmente fornecidos por Pat McCloskey foram utilizados para criar quatro subconjuntos de dados separados da seguinte maneira:

  • Vendas de junho nos arredoras feitas pela Easton;
  • Vendas de junho nos arredoras feitas pelas outras corretora;
  • Vendas de junho em Fort Worth feitas pela Easton;
  • Vendas de junho em Forth feitas pelas outras corretora;

Na sequência, foram calculados os preços por metro quadrado para cada subconjunto de dados. Dado que o preço por metro quadrado não apresentou distribuição normal para as vendas de outras corretoras em Fort-Worth (p-valor = 0.0286 < 0.05), fez se necessária uma transformação logarítimica do preço por metro quadrado a fim de normalizar os dados. Os testes de normalidade estão apresentados no apêndice II.

Finalmente, foram gerados os gráficos de distribuição do log(Preço/m²) apresentados pelas figuras 4 e 5, que atestam a sobreposição dos intervalos de confiança.

Figura 4 - Distribuição normal de log(preço/m²) para as vendas relaizadas em Forth Worth no mês junho


Figura 5 - Distribuição normal de log(preço/m²) para as vendas relaizadas nos arredores no mês junho


Com base no modelo de regressão e nos gráficos apresentados anteriormente, pode-se concluir que os preços de venda adotados pela Easton Imobiliária para as residências de características iguais às dos reclamentes, estão de acordo como os valores praticados pelo mercado. Assim, é incorreto afirmar que, caso a Easton Imobiliária fixasse os preços de acordo com o mercado, os clientes conseguiriam uma venda mais vantoja, pois as vendas da Easton já são naturalmente fixadas conforme suas concorrentes. Esta constatação leva a crer que os preços praticados pela Easton para ambas as casas não foram subvalorizados, pois não há razão para que apenas estes dois imóveis tenham sido subvalorizados em relação às demais vendas da corretora.


2.2.2 2ª Etapa: Verificação de subvalorização via aplitude interquartil

O segundo método adotado para provar que as casas não foram subvalorizadas, foi a regra de 1,5 vezes a amplitude interquartil(AIQ). Esta abordagem foi implementada para as 415 vendas realizadas pelas concorrentes da Easton Imobiliária nos últimos quatro meses. A equações 3, 4 e 5 ilustram esta regra (Ross, 2019):


AIQ = Q3 - Q1 (3)
Limite inferior = Q1 - 1,5 x AIQ (4)
Limite superior = Q3 + 1,5 x AIQ (5)


Desta maneira, se a residência de algum dos reclamantes apresentar um preço menor ou igual ao limite inferior das vendas praticadas pelas outras corretoras, ela deve ser considerada um outlier, pois este valor seria muito inferior àqueles observados na distribuição. Esta situação caracterizaria a subvaloriação do imóvel, e confirmaria a veracidade das alegações feitas pelos reclamantes.

Partindo deste princípio, foram desenvolvidas três análises como o objetivo de provar que ambas as casas não foram subvalorizadas. São elas:


  • Análise Univariada do Preço/m²
  • Análise Bivariada do Preço x Localização
  • Análise Bivariada do Preço x Mês


A escolha por estas variáveis foi feita com base no modelo de regressão linear apresentado na seção 2.2.1, que indica um maior efeito do tamanho, localização e mês na formação do preço de venda. A seguir, são apresentadas a figura 6 e a tabela 5, que ilustram os boxplots e resumos numéricos provenietes da análise univariada de preço/m²

## Warning: Unknown or uninitialised column: 'Preco_m2'.
Figura 6 - Boxplot do Preço/m² para as vendas realizadas por outras corretoras


Tabela 5 - Resumo numérico do preço/m²
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   582.2   722.1   825.8   824.5   918.1  1146.4

De posse destas informações, foi possível calcular a amplitude interquatil e determinar o limite inferior dos preço/m². É valido salientar que apenas os valores abaixo deste limite podem ser considerados outliers, o que qualificaria a venda como subvalorizada. Os resultados são apresentados a seguir:

## [1] "Amplitude Interquartil:"
## [1] 196
## [1] "Limite inferior:"
## [1] 428.1
## [1] "Comparação:"
## [1] "Casa 1: preço/m² = USD 435.96 > USD 428.1 "
## [1] "Casa 2: preço/m² = USD 462.21 > USD 428.1 "

Como o limite inferior é menor que os preços do metro quadrado sob os quais ambas as casas foram comercializadas, não é possível afirmar que as casas foram subvalorizadas. Assim, a análise univariada do preço por metro quadrado leva à conclusão de que as reclamações dos clientes não são verdadeiras.

Adotando o mesmo procedimento para as demais análises, foram obtidas os boxplots e resumos numéricos apresentados pela figura 7 e pelas tabelas 6 e 7.

Figura 7 - Boxplot do Preço x Localização para as vendas realizadas po outras corretoras


Tabela 6 - Resumo numérico do preço nos arredores
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  102150  117675  126375  129284  138938  177750


Arredores

## [1] "Amplitude Interquartil:"
## [1] 21263
## [1] "Limite inferior:"
## [1] 85780.5
## [1] "Comparação"
## [1] "Casa 1: preço = USD 88500 > USD 85780.5"

Tabela 7 - Resumo numérico do preço em Fort Worth
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   99000  115125  124200  129895  145275  184800


Fort Worth

## [1] "Amplitude Interquartil:"
## [1] 30150
## [1] "Limite inferior:"
## [1] 69900
## [1] "Casa 2: preço = USD 79500 > USD 69900 "

Desta maneira, os preços fixados pela Easton foram superiores aos limites mínimos de USD 69900 para a cidade de Fort Worth, e USD 85780.5 para os arredores da região de Dallas-Fort Woth. Assim, a análise bivariada do preço em relação a localização indica que as casas não foram subvalorizadas.

Por fim, foi conduzida a análise bivariada entre o preço praticado pelas outras corretores e o mês da venda. A figura 8 ilustra o gráfico boxplot resultante desta análise, enquanto a tabela 8 apresenta o resumo numérico referente aos preços fixados no mês de junho.

Figura 8 - Boxplot do Preço x Mês para as vendas realizadas por outras corretoras


Tabela 8 - Resumo numérico do preço no mês de Junho
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   99000  115350  133350  133454  150450  181500
## [1] "Amplitude Interquartil:"
## [1] 35100
## [1] "Limite inferior:"
## [1] 62700
## [1] "Casa 1: preço = USD 88500 > USD 62700"
## [1] "Casa 2: preço = USD 79500 > USD 62700"

A análise bivariada dos preços por mês também indica que as casas não foram subvalorizadas, uma vez que o preço das casas vendidas no mês de junho apresenta um limite inferior igual USD 62700.

Baseado nas análises anteriores conclui-se que, embora os preços das casas 1 e 2 estejam abaixo dos valores de venda exercídos por outras corretoras, não é possível afirmar que houve subvalorização das casas por parte da Easton. Esta conclusão se baseia no fato de que a discrepância dos valores de venda destas casas e em relação ao mercado não foram elevadas o suficiente para que elas possam consideradas outliers . As figuras 9, 10, 11 e 12 a seguir ilustram esta conclusão através dos gráficos de dispersão para cada uma das análises. Nestes gráficos, os limites inferiores estão indicados por meio da linha azul.

Figura 9 - Gráfico de dispersão dos preços por metro quadrado praticados por outras corretoras


Figura 10 - Gráfico de dispersão dos preços praticados em Arlington


Figura 11 - Gráfico de dispersão dos preços praticados em Fort Worth


Figura 12 - Gráfico de dispersão dos preços praticados no mês de junho


3 Conclusão

Os resultados apresentados na seção 2 reforçam a ética na atuação da Easton Imobiliária durante as vendas realizadas na região metropolitana de Dallas-Fort Worth. Através do modelo de regressão linear obtido através da base de dados de Pat McCloskey, ficou constatado que a corretora responsável pela realização das vendas não é um fator preponderante na fixação de preços das casas da região. Como consequência, garante-se que os preços praticados pela Easton tendem a ser semelhantes aos de suas concorrentes. Já os gráficos de distribuição normal do log(preço/m²) da apresentam intervalos de confiança coincidentes entre a Easton e o restante do mercado, atestando que o preço médio praticado pela Easton é igual ao de seus concorrentes. Assim é possível concluir que a hipótese de que a Easton Imobiliária vem subvalorizando propositalmente a suas vendas pode ser descartada, o que reforça a postura ética adotada pela corretora em defesa dos interesses de seus clientes.

Com os dados referentes a vendas das outras corretoras da região, foram conduzidas análises bivariadas do preço em relação à localização, e do preço em relação ao mês de venda, bem como uma análise univariada do preço por metro quadrado. Com base nestas análises, ficaram constatados os limites inferiores de 428.1 USD/m², USD 85780.5 para casas localizadas em Arlington, USD 69900 para as casas em Fort-Worth, e USD 62700 para as casas vendidas no mês de junho. Todos estes limites estão abaixo dos valores de venda observados nas casas alvo de reclamções, conforme apresentado na seção 2. Esta observação comprova que os preços de USD 88500 para a casa 1 e USD 79500 para a casa 2 não representam outliers em relação aos preços praticados pelas outras corretoras. Portanto, as alegações de que ambas as casas foram subvalorizadas em relação ao mercado são incorretas.

Ainda com base nos resumos numéricos das análises bivariadas, nota-se que as duas casas sob reclamação tiveram seus preços fixados abaixo dos valores mínimos praticados por outras corretoras nos últimos quatro meses, conforme listado a seguir:


Preços mínimos praticados por outras corretoras

  • Preço mínimo por metro quadrado: 582.2 USD/m²
  • Preço mínimo em Arlington: USD 102150
  • Preço mínimo em Fort Worth: USD 99000
  • Preço mínimo em junho: USD 99000 (casa vendida em Fort Worth)

Entretanto, isto não significa que as casas foram subvalorizadas propositalmente pela Easton, pois como visto anteriormente, seus preços não são considerados outliers em relação as vendas das demais corretoras. O baixo preço destas casas pode ser explicado por variáveis que não fizeram das análises conduzidas neste trabalho, como o estado de conservação do imóvel, qualidade do acabemento, a existência de piscina, a presença de falhas estruturais ou funcionais, o bairro onde a residência se localiza, entre outros.

Como exemplo, espera-se que uma residência localizada em um bairro de classe média baixa em Arlington seja mais barata que outra localizada em um bairro nobre. Assim, esta variável ajudaria a explicar o baixo preço aplicado a esta casa em relação aos demais imóveis da cidade.

Portanto, podemos concluir que a Easton imobiliária não subvalorizou o preço das residências dos reclamantes, e que seus preços tem estado alinhados com os do restante do mercado. Assim, as alegações de subvalorização apresentadas pelos clientes da companhia devem ser desconsideradas.

====================================================================

Apêndice I

Boxplots e resumos numéricos do preço por m² em relação à corretora e a localização

## Warning: Unknown or uninitialised column: 'Preco_m2_quartos'.

Resumo numérico: Casas vendidas pela Easton Imobiliária em Dallas
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   856.8   877.1   893.2   909.2   932.7   994.8
Resumo numérico: Casas vendidas por outras imobiliárias em Dallas
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   761.8   870.1   917.6   922.7   965.5  1146.4

Resumo numérico: Casas vendidas pela Easton Imobiliária em Fort Worth
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   649.9   692.2   720.0   729.1   752.1   846.8
Resumo numérico: Casas vendidas pelas outras imobiliária em Fort Worth
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   623.0   703.3   738.0   741.6   776.5   904.0

Resumo numérico: Casas vendidas pela Easton Imobiliária nos arredores da região de Dallas-Fort Woth
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   620.5   655.6   685.2   686.3   706.8   775.6
Resumo numérico: Casas vendidas pelas outras imobiliária nos arredores da região de Dallas-Fort Woth
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   582.2   650.6   697.8   697.7   738.6   871.4

Apêndice II

Testes de validação e obtenção coeficientes dos modelos de regressão linear dos preços das Easton e das Outras Corretos

#df_outras

#teste de normalidade do modelo1_imobiliarias (Shapiro-Wilk)
res <- rstandard(modelo1_outras)
teste_shapiro <- shapiro.test(res)
shapiro.test(res)
## 
##  Shapiro-Wilk normality test
## 
## data:  res
## W = 0.99446, p-value = 0.1394
if (teste_shapiro$p.value > 0.05){
  print("Aceitar H0: Distribuição normal")
} else {
  print("Aceitar H1:A distribuição não é normal")
}
## [1] "Aceitar H0: Distribuição normal"
#teste de homgeneidade de variancia do modelo1_imobiliarias (Breush-Pagan)
library(car)
teste_breush <- ncvTest(modelo1_outras)
ncvTest(modelo1_outras)
## Non-constant Variance Score Test 
## Variance formula: ~ fitted.values 
## Chisquare = 3.818531, Df = 1, p = 0.050689
if (teste_breush$p > 0.05){
  print("Aceitar H0: Distribuição com homogeneidade de variâncias")
} else {
  print("Aceitar H1: Distribuição sem homogeneidade de de variâncias")
}
## [1] "Aceitar H0: Distribuição com homogeneidade de variâncias"
#----------------------------------------------------------------------

#df_easton

#teste de normalidade do modelo1_imobiliarias (Shapiro-Wilk)
res <- rstandard(modelo1_easton)
teste_shapiro <- shapiro.test(res)
shapiro.test(res)
## 
##  Shapiro-Wilk normality test
## 
## data:  res
## W = 0.98565, p-value = 0.835
if (teste_shapiro$p.value > 0.05){
  print("Aceitar H0: Distribuição normal")
} else {
  print("Aceitar H1:A distribuição não é normal")
}
## [1] "Aceitar H0: Distribuição normal"
#teste de homgeneidade de variancia do modelo1_imobiliarias (Breush-Pagan)
library(car)
teste_breush <- ncvTest(modelo1_easton)
ncvTest(modelo1_easton)
## Non-constant Variance Score Test 
## Variance formula: ~ fitted.values 
## Chisquare = 5.925629, Df = 1, p = 0.014922
if (teste_breush$p > 0.05){
  print("Aceitar H0: Distribuição com homogeneidade de variâncias")
} else {
  print("Aceitar H1: Distribuição sem homogeneidade de de variâncias")
}
## [1] "Aceitar H1: Distribuição sem homogeneidade de de variâncias"
#----------------------------------------------------------------------

Apêndice III

Script Construído para as análises

library(corrplot)

df_imobiliarias <- readxl::read_xlsx("C:/Users/rianm/Documents/Rian/Mestrado_UFF/Estatistica/Base_de_dados-master/df_Easton_Imobiliaria2.xlsx")

#Calcula as variáveis preço/m2:
for (venda in 1:nrow(df_imobiliarias)) {
  df_imobiliarias$Preco_m2[venda] <- df_imobiliarias$Preco[venda]/df_imobiliarias$Tamanho[venda]
}

#Gera as bases de dados df_easton e df_outras
df_easton <- data.frame(Mes= integer(),
                        Preco= integer(),
                        Tamanho= double(),
                        Quartos= integer(),
                        Idade= integer(),
                        Localizacao= integer(),
                        Corretora= integer(),
                        stringsAsFactors = FALSE)

df_outras <- data.frame(Mes= integer(),
                        Preco= integer(),
                        Tamanho= double(),
                        Quartos= integer(),
                        Idade= integer(),
                        Localizacao= integer(),
                        Corretora= integer(),
                        stringsAsFactors = FALSE)

#Preenche as bases de dados df_easton e df_outras
df_easton <- subset(df_imobiliarias, Corretora == 1)
df_outras <- subset(df_imobiliarias, Corretora == 0)

#Organiza as bases de dados por preço, em ordem decrescente
df_easton <- df_easton[order(df_easton$Preco, decreasing = TRUE),]
df_outras <- df_outras[order(df_outras$Preco, decreasing = TRUE),]

#Separa as casas por localizaçao
loc1_easton <- subset(df_easton, Localizacao == 1)
loc2_easton <- subset(df_easton, Localizacao == 2)
loc3_easton <- subset(df_easton, Localizacao == 3)

loc1_outras <- subset(df_outras, Localizacao == 1)
loc2_outras <- subset(df_outras, Localizacao == 2)
loc3_outras <- subset(df_outras, Localizacao == 3)

loc1 <- subset(df_imobiliarias, Localizacao == 1)
loc2 <- subset(df_imobiliarias, Localizacao == 2)
loc3 <- subset(df_imobiliarias, Localizacao == 3)

#Gera os boxplots e remove loc1, loc2, loc3

loc1 <- within(loc1, {
  Corretora <- factor(Corretora, labels=c('Outras',
                                          'Easton'))
})
loc2 <- within(loc2, {
  Corretora <- factor(Corretora, labels=c('Outras',
                                          'Easton'))
})
loc3 <- within(loc3, {
  Corretora <- factor(Corretora, labels=c('Outras',
                                          'Easton'))
})

par(bg="#fffbe2")
boxplot(loc1$Preco_m2 ~ loc1$Corretora, main="Preço por mês vs Corretora\n Município de Dallas", 
        col=c("#a8382b", "#2ba899"), ylab="Preço por mês (USD/m2)", xlab="Corretora")
summary(loc1_easton$Preco_m2)
summary(loc1_outras$Preco_m2)

par(bg="#fffbe2")
boxplot(loc2$Preco_m2 ~ loc2$Corretora, main="Preço por mês vs Corretora\n Município de Fort Worth", 
        col=c("#a8382b", "#2ba899"), ylab="Preço por mês (USD/m2)", xlab="Corretora")
summary(loc2_easton$Preco_m2)
summary(loc2_outras$Preco_m2)

par(bg="#fffbe2")
boxplot(loc3$Preco_m2 ~ loc3$Corretora,  main="Preço por Mês vs Corretora\n Arredores da Região Metropolitana", 
        col=c("#a8382b", "#2ba899"), ylab="Preço por Mês (USD/m2)", xlab="Corretora")
summary(loc3_easton$Preco_m2)
summary(loc3_outras$Preco_m2)

remove(loc1, loc2, loc3)

# Gera as matriz correlação de df_easton e df_outras
MC_easton <- cor(df_easton[,c("Preco", "Mes", "Tamanho", "Quartos", "Idade", "Localizacao")])
MC_outras <- cor(df_outras[,c("Preco", "Mes", "Tamanho", "Quartos", "Idade", "Localizacao")])
MC_imobiliarias <- cor(df_imobiliarias[,c("Preco", "Mes", "Tamanho", "Quartos", "Idade", "Localizacao", "Corretora")])

corrplot.mixed(MC_easton, lower.col = "black", upper = "square")
corrplot.mixed(MC_outras, lower.col = "black", upper = "square")
corrplot.mixed(MC_imobiliarias, lower.col = "black", upper = "square")

increm <- ((max(df_outras$Tamanho)-min(df_outras$Tamanho))/4)

C1 <- min(df_outras$Tamanho) + increm
C2 <- C1 + increm
C3 <- C2 + increm

for (casa in 1:nrow(df_imobiliarias)) {
  if (df_imobiliarias$Tamanho[casa] <= C1 ) {
    df_imobiliarias$Classe_Tam[casa] <- 1
  } else if (df_imobiliarias$Tamanho[casa] <= C2) {
    df_imobiliarias$Classe_Tam[casa] <- 2
  } else if (df_imobiliarias$Tamanho[casa] <= C3) {
    df_imobiliarias$Classe_Tam[casa] <- 3
  } else {
    df_imobiliarias$Classe_Tam[casa] <- 4
  }
}

# Gera o boxplot do preço por classe de tamanho

par(bg="#fffbe2")
boxplot(df_imobiliarias$Preco ~ df_imobiliarias$Classe_Tam, main="Preço vs Tamanho", col=c("#a8382b"), ylab="Preço (USD)", xlab="Classes de Tamanho")

# Gera o boxplot do preço por localização

par(bg="#fffbe2")
boxplot(df_imobiliarias$Preco ~ df_imobiliarias$Localizacao, main="Preço vs Localização", col=c("#a8382b"), ylab="Preço (USD)", xlab="Localização")

# Separa as casas vendidas em junho nos arredores de FWH.
df_out_jun_loc3 <- subset(df_outras, Mes == 6 & Localizacao == 3)
df_out_jun_loc2 <- subset(df_outras, Mes == 6 & Localizacao == 2)

df_eas_jun_loc3 <- subset(df_easton, Mes == 6 & Localizacao == 3)
df_eas_jun_loc2 <- subset(df_easton, Mes == 6 & Localizacao == 2)

#Testa a normalidade dos dados

shapiro.test(df_out_jun_loc2$Preco_m2)
shapiro.test(df_eas_jun_loc2$Preco_m2)
shapiro.test(df_out_jun_loc3$Preco_m2)
shapiro.test(df_eas_jun_loc3 $Preco_m2)

# Gera os gráfico de distribuição normal para os arredores no mês de junho
x_preco <- seq(6.3, 6.7, length=10000)
y_out <- dnorm(x_preco, mean=mean(log(df_out_jun_loc3$Preco_m2)), sd=sd(log(df_out_jun_loc3$Preco_m2)))
y_eas <- dnorm(x_preco, mean=mean(log(df_eas_jun_loc3$Preco_m2)), sd=sd(log(df_eas_jun_loc3$Preco_m2)))
plot(x_preco, y_eas, type="l", lwd=1,  col="#84220f", xlab = "log(Preço/m²)", ylab = "", main = "Distribuições de Log(Preço/m²) \n nos arredores da região de Dallas-Fort Worth")
lines(x_preco,y_out,col="#34840f")

legend("topleft", 
       legend = c("Outras", "Easton"), 
       col=c("#34840f", "#84220f"),
       pch = 15, 
       bty = "n", 
       pt.cex = 2, 
       cex = 1.2, 
)

segments(6.44, 1.8, 6.562, 1.8,
         col = "#84220f", lty = par("lty"), xpd = FALSE)

segments(6.371, 0.9, 6.599, 0.9,
         col = "#34840f", lty = par("lty"), xpd = FALSE)


#Médias e desvios padrões para easton e outras em Fort Worth
mean(log(df_out_jun_loc2$Preco_m2))
sd(log(df_out_jun_loc2$Preco_m2))

mean(log(df_eas_jun_loc2$Preco_m2))
sd(log(df_eas_jun_loc2$Preco_m2))

# Gera os gráfico de distribuição normal para Fort Worth no mês de junho
x_preco <- seq(6.3, 6.8, length=10000)
y_out <- dnorm(x_preco, mean=mean(log(df_out_jun_loc2$Preco_m2)), sd=sd(log(df_out_jun_loc2$Preco_m2)))
y_eas <- dnorm(x_preco, mean=mean(log(df_eas_jun_loc2$Preco_m2)), sd=sd(log(df_eas_jun_loc2$Preco_m2)))
plot(x_preco, y_eas, type="l", lwd=1,  col="#84220f", xlab = "log(Preço/m²)", ylab = "", main = "Distribuições de Log(Preço/m²) \n nos arredores da região de Dallas-Fort Worth")
lines(x_preco,y_out,col="#34840f")

legend("topleft", 
       legend = c("Outras", "Easton"), 
       col=c("#34840f", "#84220f"),
       pch = 15, 
       bty = "n", 
       pt.cex = 2, 
       cex = 1.2, 
)

segments(6.476, 1.95, 6.608, 1.95,
         col = "#84220f", lty = par("lty"), xpd = FALSE)

segments(6.42, 0.9, 6.672, 0.9,
         col = "#34840f", lty = par("lty"), xpd = FALSE)


# Faz o modelo de Regressão Linear (Variável dependente = Preço):

##MODELO 1:

modelo1_imobiliarias <- lm(Preco ~ Mes + Tamanho + Quartos + Idade + Corretora + Localizacao, df_imobiliarias)
summary(modelo1_imobiliarias)

modelo1_outras <- lm(Preco ~ Mes + Tamanho + Quartos + Idade + Localizacao, df_outras)
summary(modelo1_outras)

modelo1_easton <- lm(Preco ~ Mes + Tamanho + Quartos + Idade + Localizacao, df_easton)
summary(modelo1_easton)

##MODELO 2:

modelo2_imobiliarias <- lm(log(Preco_m2) ~ Mes + Localizacao, df_imobiliarias)
summary(modelo2_imobiliarias)

modelo2_outras <- lm(log(Preco_m2) ~ Mes + Quartos + Localizacao, df_outras)
summary(modelo2_outras)


#=====================================================================
#           Validação do modelo 1 de regressão linear
#=====================================================================
#Obs: para a validação do modelo 1, são aplicados os testes de normalidade, independência e homogeneidade de variâncias sobre os resíduos do modelo.
#H0: É sempre favorável às condições analisadas (normalidade, independencia e homogeneidade)
#H1: É a hipótese alternativa

#------------------------------------------------------------------------
#df_Imobiliárias

#teste de normalidade do modelo1_imobiliarias (Shapiro-Wilk)
res <- rstandard(modelo1_imobiliarias)
teste_shapiro <- shapiro.test(res)
shapiro.test(res)

if (teste_shapiro$p.value > 0.05){
  print("Aceitar H0: Distribuição normal")
} else {
  print("Aceitar H1:A distribuição não é normal")
}

#teste de independência do modelo1_imobiliarias (Durbin Watson)
library(lmtest)
teste_durbin <- dwtest(modelo1_imobiliarias)
dwtest(modelo1_imobiliarias)

if (teste_durbin$p.value > 0.05){
  print("Aceitar H0: Distribuição independente")
} else {
  print("Aceitar H1:Distribuição dependente")
}

#teste de homgeneidade de variancia do modelo1_imobiliarias (Breush-Pagan)
library(car)
teste_breush <- ncvTest(modelo1_imobiliarias)
ncvTest(modelo1_imobiliarias)

if (teste_breush$p > 0.05){
  print("Aceitar H0: Distribuição com homogeneidade de variâncias")
} else {
  print("Aceitar H1: Distribuição sem homogeneidade de de variâncias")
}

#----------------------------------------------------------------------
#df_outras

#teste de normalidade do modelo1_imobiliarias (Shapiro-Wilk)
res <- rstandard(modelo1_outras)
teste_shapiro <- shapiro.test(res)
shapiro.test(res)

if (teste_shapiro$p.value > 0.05){
  print("Aceitar H0: Distribuição normal")
} else {
  print("Aceitar H1:A distribuição não é normal")
}

#teste de independência do modelo1_imobiliarias (Durbin Watson)
library(lmtest)
teste_durbin <- dwtest(modelo1_outras)
dwtest(modelo1_outras)

if (teste_durbin$p.value > 0.05){
  print("Aceitar H0: Distribuição independente")
} else {
  print("Aceitar H1:Distribuição dependente")
}

#teste de homgeneidade de variancia do modelo1_imobiliarias (Breush-Pagan)
library(car)
teste_breush <- ncvTest(modelo1_outras)
ncvTest(modelo1_outras)

if (teste_breush$p > 0.05){
  print("Aceitar H0: Distribuição com homogeneidade de variâncias")
} else {
  print("Aceitar H1: Distribuição sem homogeneidade de de variâncias")
}

#----------------------------------------------------------------------

#df_easton

#teste de normalidade do modelo1_imobiliarias (Shapiro-Wilk)
res <- rstandard(modelo1_easton)
teste_shapiro <- shapiro.test(res)
shapiro.test(res)

if (teste_shapiro$p.value > 0.05){
  print("Aceitar H0: Distribuição normal")
} else {
  print("Aceitar H1:A distribuição não é normal")
}

#teste de independência do modelo1_imobiliarias (Durbin Watson)
library(lmtest)
teste_durbin <- dwtest(modelo1_easton)
dwtest(modelo1_easton)

if (teste_durbin$p.value > 0.05){
  print("Aceitar H0: Distribuição independente")
} else {
  print("Aceitar H1:Distribuição dependente")
}

#teste de homgeneidade de variancia do modelo1_imobiliarias (Breush-Pagan)
library(car)
teste_breush <- ncvTest(modelo1_easton)
ncvTest(modelo1_easton)

if (teste_breush$p > 0.05){
  print("Aceitar H0: Distribuição com homogeneidade de variâncias")
} else {
  print("Aceitar H1: Distribuição sem homogeneidade de de variâncias")
}

casa1 <- data.frame(Mes= 6,
                    Preco= 88500,
                    Tamanho= 203,
                    Quartos= 3,
                    Idade= 4,
                    Localizacao= 3,
                    Corretora= 1,
                    preco_m2= 88500/203,
                    preco_m2_quartos = 88500/203/3)

casa2 <- data.frame(Mes= 6,
                    Preco= 79500,
                    Tamanho= 172,
                    Quartos= 3,
                    Idade= 9,
                    Localizacao= 2,
                    Corretora= 1,
                    preco_m2= 79500/172,
                    preco_m2_quartos = 79500/172/3)


predict(modelo1_imobiliarias, casa1, interval = "prediction")
predict(modelo1_outras, casa1, interval = "prediction")
predict(modelo1_outras, casa1, interval = "confidence")
predict(modelo1_easton, casa1, interval = "confidence")


predict(modelo1_imobiliarias, casa2, interval = "prediction")
predict(modelo1_outras, casa2, interval = "confidence")
predict(modelo1_easton, casa2, interval = "confidence")

#----------------------------------------------------------------------
#PARTE 2

#Calcula variável preço/m2:
for (venda in 1:nrow(df_imobiliarias)) {
  df_imobiliarias$Preco_m2[venda] <- df_imobiliarias$Preco[venda]/df_imobiliarias$Tamanho[venda]
}

#Gera o boxplot e resumo numérico
par(bg="#fffbe2")
boxplot(df_outras$Preco_m2, main="Preço do metro quadradado \nOutras Corretoras", col=c("#a8382b"), ylab="Preço/m² (USD/m²)")

summary(df_outras$Preco_m2)

#Calcula a amplitude interquartil e o limite inferior do preço/m2:
"Amplitude Interquartil:"
AIQ <- 918.1 - 722.1

"Limite inferior:"
LI <-722.1 - 1.5*AIQ

#Gera o boxplot do preço por localização
outras_loc <- within(df_outras, {
  Localizacao <- factor(Localizacao, labels=c('Dallas','Fort Worth', 'Arredores'))})

par(bg="#fffbe2")
boxplot(outras_loc$Preco ~ outras_loc$Localizacao, main="Preço x Localização \nOutras Corretoras", col=c("#a8382b"), ylab="Preço (USD)", xlab = "Localização")
summary(df_outras$Preco_m2)

#Gera o resumo numérico dos preços em Arlington
summary(loc3_outras$Preco)

#Calcula a amplitude interquartil e o limite inferior do preço em Arlington:
"Amplitude Interquartil:"
AIQ <- 138938 - 117675

"Limite inferior:"
117675 - 1.5*AIQ

#Gera o resumo numérico dos preços em Fort Worth
summary(loc2_outras$Preco)

#Calcula a amplitude interquartil e o limite inferior do preço em FW:

"Amplitude Interquartil:"
AIQ <- 145275 - 115125
AIQ 
"Limite inferior:"
115125 - 1.5*AIQ

#Gera o boxplot do preço por mes

outras_mes<- within(df_outras, {
  Mes <- factor(Mes, labels=c('Março','Abril', 'Maio', 'Junho'))})

par(bg="#fffbe2")
boxplot(outras_mes$Preco ~ outras_mes$Mes, main="Preço x Mês \nOutras Corretoras", col=c("#a8382b"), ylab="Preço (USD)", xlab = "Mês")

#Gera o resumo numérico dos preços por mes

df_outras_junho <- subset(df_outras, Mes == 6)
summary(df_outras_junho$Preco)
remove(df_outras_junho)

#Calcula a amplitude interquartil e o limite inferior do preço por mes:
"Amplitude Interquartil:"
AIQ <- 150450 - 115350
AIQ 
"Limite inferior:"
115350 - 1.5*AIQ

df_outras_reclamacoes <- df_outras
df_outras_reclamacoes[416,] <- casa1
df_outras_reclamacoes[417,] <- casa2

df_outras_reclamacoes <- within(df_outras_reclamacoes, {
  Corretora <- factor(Corretora, labels=c('Outras',
                                          'Easton'))
})

#Gera o gráfico de disperção do preco_m2

par(bg="#fffbe2")
plot(df_outras_reclamacoes$Preco_m2, 
     main = "Gráfico de dispersão do Preço/m²",
     ylab = "Preço/m² (USD/m²)", xlab = "índice", 
     col=c("#34840f", "#84220f")[df_outras_reclamacoes$Corretora],
     pch=c(1, 20)[df_outras_reclamacoes$Corretora])

abline(h = 428.1, col="blue")

legend("bottomleft", 
       legend = c("outras", "Easton"), 
       col=c("#34840f", "#84220f"),
       pch = c(1, 20), 
       bty = "n", 
       pt.cex = 2, 
       cex = 1.2, 
)

#Gera o gráfico de disperção do preco no mes de junho

outras_reclamacoes_mes <- subset(df_outras_reclamacoes, Mes == 6)
par(bg="#fffbe2")
plot(outras_reclamacoes_mes$Preco, 
     main = "Gráfico de dispersão do Preço no mês de Junho",
     ylab = "Preço (USD)", xlab = "índice", 
     ylim = c(60000, 200000),
     col=c("#34840f", "#84220f")[outras_reclamacoes_mes$Corretora],
     pch=c(1, 20)[outras_reclamacoes_mes$Corretora])

abline(h = 62700, col="blue")

legend("bottomleft", 
       legend = c("outras", "Easton"), 
       col=c("#34840f", "#84220f"),
       pch = c(1, 20), 
       bty = "n", 
       pt.cex = 2, 
       cex = 1.2, 
)

remove(outras_reclamacoes_mes)

#Gera o gráfico de disperção do preco em Fort Worth

outras_reclamacoes_fw <- subset(df_outras_reclamacoes, Localizacao == 2)
par(bg="#fffbe2")
plot(outras_reclamacoes_fw$Preco, 
     main = "Gráfico de dispersão do Preço em Fort Worth",
     ylab = "Preço (USD)", xlab = "índice", 
     ylim = c(65000, 200000),
     col=c("#34840f", "#84220f")[outras_reclamacoes_fw$Corretora],
     pch=c(1, 20)[outras_reclamacoes_fw$Corretora])

abline(h = 69900, col="blue")

legend("bottomleft", 
       legend = c("outras", "Easton"), 
       col=c("#34840f", "#84220f", "blue"),
       pch = c(1, 20), 
       bty = "n", 
       pt.cex = 2, 
       cex = 1.2, 
)

remove(outras_reclamacoes_fw)

#Gera o gráfico de disperção do preco em Arlington

outras_reclamacoes_arl <- subset(df_outras_reclamacoes, Localizacao == 3)
par(bg="#fffbe2")
plot(outras_reclamacoes_arl$Preco, 
     main = "Gráfico de dispersão do Preço em Arlington",
     ylab = "Preço (USD)", xlab = "índice", 
     ylim = c(80000, 200000),
     col=c("#34840f", "#84220f")[outras_reclamacoes_arl$Corretora],
     pch=c(1, 20)[outras_reclamacoes_arl$Corretora])

abline(h = 85780.5, col="blue")

legend("bottomleft", 
       legend = c("outras", "Easton"), 
       col=c("#34840f", "#84220f", "blue"),
       pch = c(1, 20), 
       bty = "n", 
       pt.cex = 2, 
       cex = 1.2, 
)

remove(outras_reclamacoes_arl, df_outras_reclamacoes)