#install.packages("knitr", repos = "https://cran.stat.unipd.it/")
#install.packages("gridExtra")
library(knitr)
library(moments)
library(ggplot2)
library(dplyr)
##
## Caricamento pacchetto: 'dplyr'
## I seguenti oggetti sono mascherati da 'package:stats':
##
## filter, lag
## I seguenti oggetti sono mascherati da 'package:base':
##
## intersect, setdiff, setequal, union
library(gridExtra)
##
## Caricamento pacchetto: 'gridExtra'
## Il seguente oggetto è mascherato da 'package:dplyr':
##
## combine
Caricamento del dataset per procedere con l’analisi delle variabili
dati <- read.csv("realestate_texas.csv", sep = ",")
attach(dati)
Il dataset dispone di 240 osservazioni e 8 variabili:
1-city, variabile qualitativa nominale che rappresenta le città di riferimento
2-year, variabile qualitativa ordinale che rappresenta l’anno di riferimento
3-month, variabile qualitativa nominale che rappresenta il mese di riferimento
4-sales, variabile quantitativa discreta che rappresenta il numero totale di vendite
5-volume, variabile quantitativa continua che rappresenta il valore totale delle vendite in milioni di dollari
6-median_price, variabile quantitativa discreta che rappresenta il prezzo mediano di vendita in dollari
7-listings, variabile quantitativa discreta che rappresenta il numero totale di annunci attivi
8-months_inventory, variabile quantitativa continua che rappresenta la quantità di tempo necessaria per vendere tutte le inserzioni correnti, espressa in mesi
La variabile temporale year è di natura una variabile quantitativa continua. Nel nostro caso di studio, però, va trattata come una variabile qualitativa ordinale in quanto non stiamo misurando una quantità, ma stiamo usando i numeri per etichettare categorie. Discorso analogo per la variabile month che invece è nominale in quanto non vi è un ordine naturale.
Per questi motivi non ha senso calcolare alcun tipo di statistica di sintesi per le variabili qualitative, se non la moda e le frequenze. Per le variabili quantitative, invece, si potranno calcolare gli indici di posizione, variabilità e forma.
1- Per le variabili qualitative nominali calcoliamo la moda che ci fornisce la misura della frequenza osservata più alta
moda_city<-table(city)
kable(moda_city)
| city | Freq |
|---|---|
| Beaumont | 60 |
| Bryan-College Station | 60 |
| Tyler | 60 |
| Wichita Falls | 60 |
moda_month<-table(month)
kable(moda_month)
| month | Freq |
|---|---|
| 1 | 20 |
| 2 | 20 |
| 3 | 20 |
| 4 | 20 |
| 5 | 20 |
| 6 | 20 |
| 7 | 20 |
| 8 | 20 |
| 9 | 20 |
| 10 | 20 |
| 11 | 20 |
| 12 | 20 |
Dai risultati ottenuti possiamo dire che sono due variabili con una distribuzione dei dati uniforme, infatti tutte le modalità della variabile city e tutte le modalità della variabile month presentano la stessa frequenza, pertanto sono variabili multimodali.
Continuiamo con la variabile year, per la quale calcoliamo le frequenze assolute e relative, la moda, la mediana, i percentili e il range interquartile.
calcola_distr_frequenza <- function(variable) {
# Numero totale di osservazioni
n <- length(variable)
# Creare il data frame con le frequenze
distr_frequenza <- as.data.frame(
cbind(
ni = table(variable),
fi = round(table(variable)/n,2),
Ni = cumsum(table(variable)),
Fi = round(cumsum(table(variable))/n,2)
)
)
return (distr_frequenza)
}
kable(calcola_distr_frequenza(year))
| ni | fi | Ni | Fi | |
|---|---|---|---|---|
| 2010 | 48 | 0.2 | 48 | 0.2 |
| 2011 | 48 | 0.2 | 96 | 0.4 |
| 2012 | 48 | 0.2 | 144 | 0.6 |
| 2013 | 48 | 0.2 | 192 | 0.8 |
| 2014 | 48 | 0.2 | 240 | 1.0 |
Osserviamo che la variabile ha una distribuzione uniforme di frequenza assoluta pari a 48 per ogni modalità della variabile, pertanto è una variabile multimodale di distribuzione uniforme.
#percentili (e mediana)
kable(quantile(year))
| x | |
|---|---|
| 0% | 2010 |
| 25% | 2011 |
| 50% | 2012 |
| 75% | 2013 |
| 100% | 2014 |
#range interquartile
kable(IQR(year))
| x |
|---|
| 2 |
Dall’analisi svolta osserviamo che la mediana è 2012 ed è proprio quel valore che taglia in due la distribuzione dei dati, essa rappresenta anche il 50° percentile. Inoltre, il primo quartile e il terzo quartile sono rispettivamente il 2011 e il 2013 e si lasciano alle spalle il 25% e il 75% della distribuzione dei dati. Infine il range interquartile rappresenta l’intervallo di variazione del corpo centrale ed è la differenza tra Q1 e Q3, ovvero 2.
Adesso analizziamo le variabili quantitative. Andiamo a creare funzioni destinate al calcolo degli indici statistici di sintesi necessari per queste variabili.
# Funzione per calcolare il coefficiente di variazione
CV <- function(x){
return(sd(x)/mean(x)*100)
}
# Funzione per calcolare gli indici statistici di posizione e variabilità
calcola_indici_statistici <- function(dataset, variabili_selezionate) {
dataset_selezionato <- dataset[, variabili_selezionate]
statistiche <- sapply(dataset_selezionato, function(x) {
c(
Minimo = round(min(x, na.rm = TRUE),2),
Massimo = round(max(x, na.rm = TRUE),2),
Range = round((max(x, na.rm = TRUE) - min(x, na.rm = TRUE)),2),
Media = round(mean(x, na.rm = TRUE),2),
Mediana = round(median(x, na.rm = TRUE),2),
Primo_quartile = round(quantile(x,na.rm = TRUE,0.25),2),
Terzo_quartile = round(quantile(x,na.rm = TRUE,0.75),2),
Varianza = round(var(x, na.rm = TRUE),2),
DeviazioneStandard = round(sd(x, na.rm = TRUE),2),
Coefficiente_variazione = round(CV(x),2),
Differenza_interquartile = round(IQR(x, na.rm = TRUE),2)
)
})
return(statistiche)
}
# Funzione per il calcolo degli indici di forma
calcola_indici_forma <- function(dataset,variabili_selezionate){
dataset_selezionato <- dataset[, variabili_selezionate]
statistiche <- sapply(dataset_selezionato, function(x){
c(
Asimmetria = round(skewness(x, na.rm = TRUE),2),
Curtosi = round(kurtosis(x, na.rm = TRUE),2)
)
})
return(statistiche)
}
# creiamo il vettore delle variabili che andremo ad analizzare
variabili <- c("sales", "volume", "median_price", "listings", "months_inventory")
indici_selezionati <- calcola_indici_statistici(dati, variabili)
kable(indici_selezionati)
| sales | volume | median_price | listings | months_inventory | |
|---|---|---|---|---|---|
| Minimo | 79.00 | 8.17 | 73800.00 | 743.00 | 3.40 |
| Massimo | 423.00 | 83.55 | 180000.00 | 3296.00 | 14.90 |
| Range | 344.00 | 75.38 | 106200.00 | 2553.00 | 11.50 |
| Media | 192.29 | 31.01 | 132665.42 | 1738.02 | 9.19 |
| Mediana | 175.50 | 27.06 | 134500.00 | 1618.50 | 8.95 |
| Primo_quartile.25% | 127.00 | 17.66 | 117300.00 | 1026.50 | 7.80 |
| Terzo_quartile.75% | 247.00 | 40.89 | 150050.00 | 2056.00 | 10.95 |
| Varianza | 6344.30 | 277.27 | 513572983.09 | 566568.97 | 5.31 |
| DeviazioneStandard | 79.65 | 16.65 | 22662.15 | 752.71 | 2.30 |
| Coefficiente_variazione | 41.42 | 53.71 | 17.08 | 43.31 | 25.06 |
| Differenza_interquartile | 120.00 | 23.23 | 32750.00 | 1029.50 | 3.15 |
Osserviamo che in quasi tutte le variabili, la media risulta maggiore della mediana. Ci aspettiamo quindi di avere una distirbuzione di dati asimmetrica positiva con una coda lunga verso destra per queste variabili.
Per la variabile median_price, invece, non ha senso calcolare la mediana in quanto gli indici statistici sono già calcolati su un valore mediano.
Dal punto di vista della variabilità, notiamo che le variabili sales, volume e listings presentano un range di valori molto ampio con deviazioni standard relativamente alte, pertanto i valori risultano molto dispersi rispetto alla media. Questa osservazione viene confermata anche dal coefficiente di variazione che risulta essere superiore al 30% per le tre variabili.
La variabile months_inventory, invece, presenta una deviazione standard bassa rispetto alla sua media e al range dei dati, con coefficiente di variazione basso. Pertanto i valori saranno ben distribuiti intorno alla media.
indici_selezionati <- calcola_indici_forma(dati, variabili)
kable(indici_selezionati)
| sales | volume | median_price | listings | months_inventory | |
|---|---|---|---|---|---|
| Asimmetria | 0.72 | 0.88 | -0.36 | 0.65 | 0.04 |
| Curtosi | 2.69 | 3.18 | 2.38 | 2.21 | 2.83 |
Come anticipato, notiamo che per quasi tutte le variabili, ci troviamo di fronte a delle distribuzioni asimmetriche positive e leptocurtiche, ovvero avremo una curva con una coda lunga verso destra e di forma più allungata, quindi con un picco in alto.
Osserviamone i grafici
p1 <- ggplot(data.frame(sales), aes(x = sales)) + geom_density() + ggtitle("Density Plot di sales")
p2 <- ggplot(data.frame(volume), aes(x = volume)) + geom_density() + ggtitle("Density Plot di volume")
p3 <- ggplot(data.frame(listings), aes(x = listings)) + geom_density() + ggtitle("Density Plot di listings")
p4 <- ggplot(data.frame(months_inventory), aes(x = months_inventory)) + geom_density() + ggtitle("Density Plot di months_inventory")
# Combinare i grafici
grid.arrange(p1, p2, p3, p4, ncol = 2)
L’unica eccezione è la variabile median_price. Sebbene l’indice di Fisher sia negativo, -0.36 risulta relativamente basso, quindi abbiamo una distribuzione quasi simmetrica, non molto lontana da una distribuzione normale. Questo è dovuto alla presenza di valori più estremi verso la coda di sinistra che abbassano notevolmente la media
ggplot(data.frame(median_price), aes(x = median_price)) + geom_density() + ggtitle("Density Plot di median_price")
Dalle analisi svolte sulle variabili, possiamo dire che la variabile con maggiore variabilità, e quindi quella con il coefficiente di variazione più alto, è la variabile volume con un CV di 53.71%. Essa rappresenta anche la variabile con la distribuzione più asimmetrica, in quanto presenta l’indice di asimmetria di Fisher più alto tra le variabili.
Per le variabili con un elevato numero di modalità è possibile suddividerle in classi esaustive e mutuamente esclusive.
Suddividiamo la variabile quantitativa sales in classi e creiamo la distribuzione di frequenza.
sales_cl<-cut(sales, seq(79,423,43))
kable(calcola_distr_frequenza(sales_cl))
| ni | fi | Ni | Fi | |
|---|---|---|---|---|
| (79,122] | 48 | 0.20 | 48 | 0.20 |
| (122,165] | 60 | 0.25 | 108 | 0.45 |
| (165,208] | 46 | 0.19 | 154 | 0.64 |
| (208,251] | 25 | 0.10 | 179 | 0.75 |
| (251,294] | 29 | 0.12 | 208 | 0.87 |
| (294,337] | 16 | 0.07 | 224 | 0.93 |
| (337,380] | 10 | 0.04 | 234 | 0.98 |
| (380,423] | 4 | 0.02 | 238 | 0.99 |
Osserviamo che la classe modale risulta essere la classe (122,165] con la più alta frequenza osservata. Rappresentiamo i dati con un grafico a barre
ggplot(data=dati)+
geom_bar(aes(x = sales_cl),
stat = "count",
col = "black",
fill = "violet")+
labs(title = "Distribuzione delle classi di sales",
x = "Numero totale di vendite",
y = "Frequenze assolute")+
theme_classic()
Da questa rappresentazione grafica possiamo notare che la classe con il numero totale di vendite maggiore è rappresentato proprio dalla classe (122,165], che rappresenta proprio la classe modale.
Infine calcoliamo l’indice di eterogeneità di Gini
gini.index<-function(x){
ni= table(x)
fi=ni/length(x)
fi2=fi^2
J=length(table(x))
gini <- 1-sum(fi^2)
gini.normalizzato <- round(gini/((J-1)/J),2)
return(gini.normalizzato)
}
kable(gini.index(sales_cl))
| x |
|---|
| 0.95 |
L’indice di eterogeneità di Gini è quasi pari a 1,quindi le unità statistiche si distribuiscono abbastanza uniformemente lungo tutte le modalità della variabile.
Sappiamo che la variabile city è composta da 4 modalità che si distribuiscono in maniera del tutto uniforme, con 60 osservazioni per ogni modalità. Quindi, sappiamo a priori quanti sono i casi favorevoli, ovvero 60, e quanti sono i casi possibili, ovvero 240.
Applichiamo la formula della probabilità classica, dividendo quindi il numero di casi favorevoli per il numero di casi possibili
probabilità_classica<- function (favorevoli, possibili){
probabilita = round(favorevoli/possibili,4)
return (probabilita)
}
n <- 240
kable(probabilità_classica(60,n))
| x |
|---|
| 0.25 |
C’è una possibilità su 4 che, presa una riga a caso di questo dataset, essa riporti la città “Beaumont”. Ci aspettavamo questo risultato in quanto le 4 modalità della variabile city hanno la stessa frequenza assoluta, pertanto hanno la stessa probabilità di essere estratte. Questo tipo di funzione di probabilità si dice uniforme.
Discorso analogo per la variabile month, in quanto anche essa presenta una distribuzione uniforme dei dati
kable(probabilità_classica(20,n))
| x |
|---|
| 0.0833 |
Poiché abbiamo 48 osservazioni per il mese di Dicembre (così come per qualsiasi altro mese) e 20 osservazioni per l’anno 2012 (così come per gli altri anni), dobbiamo trovare l’intersezione tra queste due condizioni. Ogni anno ha esattamente 48/12 osservazioni per ciascun mese. Quindi, per Dicembre 2012, ci saranno esattamente 4 osservazioni. Calcoliamo quindi la probabilià su 4 casi favorevoli
kable(probabilità_classica(4,n))
| x |
|---|
| 0.0167 |
Quindi la probabilità di estrarre una riga che riporti il mese di Dicembre 2012 è 1,67%.
Per ottenere il prezzo medio degli immobili sommiamo il valore di tutte le vendite (volume) e lo dividiamo per il totale delle vendite effettutate (sales). Dato che volume è espressa in milioni di dollari,
dati$price_per_unit <- data.frame((volume/sales))
in questo modo abbiamo aggiunto una nuova colonna al dataset che rappresenta proprio il prezzo medio degli immobili.
Misurare l’efficacia degli annunci di vendita vuol dire calcolare il tempo impiegato a vendere tutti gli annunci attivi. Quindi calcoliamo il numero totale degli annunci attivi(listings) sul numero totale di mesi impiegati per venderli (months_inventory). Da questo rapporto si otterrà il numero totale di annunci venduti al mese.
dati$listings_effectiveness<-data.frame(listings/months_inventory)
In questo modo possiamo osservare l’efficacia degli annunci ed eseguire confronti.
Effettuiamo analisi statistiche condizionate per città e anno, generiamo dei summary (media e deviazione standard) per una variabile di interesse, ad esempio sales e rappresentiamo graficamente i risultati.
summary_sales <- dati %>%
group_by(city, year) %>%
summarise(
mean_sales = round(mean(sales, na.rm = TRUE),2),
sd_sales = round(sd(sales, na.rm = TRUE),2),
.groups = 'drop'
)
kable(summary_sales)
| city | year | mean_sales | sd_sales |
|---|---|---|---|
| Beaumont | 2010 | 156.17 | 36.92 |
| Beaumont | 2011 | 144.00 | 22.66 |
| Beaumont | 2012 | 171.92 | 28.39 |
| Beaumont | 2013 | 201.17 | 37.73 |
| Beaumont | 2014 | 213.67 | 36.49 |
| Bryan-College Station | 2010 | 167.58 | 70.75 |
| Bryan-College Station | 2011 | 167.42 | 62.19 |
| Bryan-College Station | 2012 | 196.75 | 74.28 |
| Bryan-College Station | 2013 | 237.83 | 95.85 |
| Bryan-College Station | 2014 | 260.25 | 86.69 |
| Tyler | 2010 | 227.50 | 48.98 |
| Tyler | 2011 | 238.83 | 49.62 |
| Tyler | 2012 | 263.50 | 46.40 |
| Tyler | 2013 | 287.42 | 53.05 |
| Tyler | 2014 | 331.50 | 56.85 |
| Wichita Falls | 2010 | 123.42 | 26.62 |
| Wichita Falls | 2011 | 106.25 | 19.76 |
| Wichita Falls | 2012 | 112.42 | 14.25 |
| Wichita Falls | 2013 | 121.25 | 26.00 |
| Wichita Falls | 2014 | 117.00 | 21.09 |
# Visualizza i risultati con ggplot2 includendo le barre di errore
ggplot(summary_sales, aes(x = factor(year), y = mean_sales, fill = city)) +
geom_bar(stat = "identity", position = "dodge") +
labs(title = "Media delle vendite per città e anno",
x = "Anno",
y = "Media delle vendite") +
theme_minimal()
Osserviamo che la media del numero vendite ha subito un’aumento dal 2011 al 2014 per tutte le città, con un picco nel 2014 per la città di Tyler che raggiunge la media di vendite più alta. L’unica eccezione è la città di Wichita Falls che presenta la media di vendite più alta nel 2010 per poi subire una forte perdita nel numero di vendite nel 2011, mantenendo poi una media quasi costante.
ggplot(data=dati) +
geom_boxplot(aes(x=city,
y=median_price),
fill="lightblue") +
labs(
title = "Distribuzione del prezzo mediano tra le città",
x = "Città",
y = "Prezzo mediano"
) +
theme(
panel.background = element_blank(),
axis.line = element_line(color = "black"),
plot.title = element_text(hjust = 0.5)
)
Si evince che la città più accessibile risulta essere Wichita Falls, con mediana bassa e prezzi più concentrati. Al contrartio, Bryan-College Station e Tyler risultano le città più costose, presentando una mediana simile. Beaumont, invece, rappresenta una fascia intermedia.
Osservando, invece, la stabilità del mercato, possiamo dire che Beaumont e Tyler presentano il mercato più variabile, con prezzi alti e bassi. Bryan-College Station invece presenta il mercato più stabile, con prezzi molto elevati.
ggplot(data = dati) +
geom_bar(aes(x = month,
y = sales,
fill = city),
stat = "identity",
position = "dodge") +
labs(
title = "Totale delle vendite per mese e città",
x = "Mese",
y = "Totale vendite",
fill = "Città"
) +
theme_minimal()
Da questo grafico possiamo osservare che le vendite più alte sono state registrate durante il mese di Giugno per la città di Tyler, mentre le vendite più basse sono state registrate durante il mese di Febbraio per la città di Wichita Falls. Ovviamente possiamo fare dei confronti tra le varie città, ad esempio osserviamo che la città con un numero di vendite minore rispetto alle altre è Wichita Falls, oppure che la città con un numero di vendite maggiore rispetto alle altre è sicuramente Tyler, che viene superata nel numero di vendite da Bryan-College Station solo durante il mese di Luglio.
#creiamo la variabile data combinando mese e anno per ottenere una serie storica lunga 5 anni
dati$yearmonth <- paste(dati$year, sprintf("%02d", dati$month), sep = "-")
dati_unici <- dati[!duplicated(dati$yearmonth), ]
#creiamo il grafico line chart
ggplot(dati_unici) +
geom_line(aes(x = yearmonth, y = sales, group = 1), col = "blue") +
geom_point(aes(x = yearmonth, y = sales, group = 1), col = "blue") +
labs(title = "Andamento delle vendite nei diversi periodi storici",
x = "Data",
y = "Vendite") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 90, hjust = 1))
Il grafico mostra una tendenza generale di crescita delle vendite nel periodo considerato. Questo è un buon segno poiché indica un aumento delle vendite nel tempo. Ci sono diverse fluttuazioni e picchi nel grafico che potrebbero derivare da campagne di annunci che possono aver influenzato positivamente le vendite. Inoltre, possiamo notare anche che i picchi si registrano maggiormente durante i periodi estivi. Questo potrebbe essere dovuto a saldi stagionali o vacanze in generale che possono comportare un aumento delle vendite.
ggplot(data=dati) +
geom_boxplot(aes(x=city,
y=volume,
fill=factor(year),
group=interaction(city, factor(year)))) +
labs(
title = "Distribuzione del valore totale delle vendite tra città ed anni",
x = "Città",
y = "Valore totale delle vendite (in milioni)"
) +
theme_classic()
Osserviamo che Beaumont ha una distribuzione del valore totale delle vendite relativamente concentrata e una mediana piuttosto bassa rispetto ad altre città, indicando che il volume delle vendite è stabile ma non elevato. Bryan-College Station ha una maggiore variabilità, suggerendo che ci sono differenze significative nei valori totali delle vendite. La mediana è piuttosto alta tra le città analizzate,quindi ha un mercato molto attivo. Tyler ha una buona distribuzione con un volume elevato. Sebbene ci sia meno variabilità rispetto a Bryan-College Station, i valori totali delle vendite sono competitivi. Infine Wichita Fallsha la distribuzione più bassa tra tutte le città analizzate, con una mediana bassa e poca variabilità. Ciò indica un mercato meno dinamico o con meno crescita.
A livello temporale, possiamo dire che il 2011 mostra un mercato stabile con dei valori di vendita piuttosto nella media; il 2012 invece sembra essere un anno di picco, soprattutto per le città di Bryan-College Station e Tyler che si distinguono rispetto alle altre.
Sempre dalla stessa analisi, era emerso che la città di Beaumont risultava essere quella con un mercato intermedio, con una fascia di prezzi nella media rispetto alle altre. Questa analisi conferma quanto affermato in precedenza, infatti possiamo notare che il valore totale delle vendite si mantiene nella media.
Le due città più costose, con un valore totale delle vendite più alto, risultano la città di Tyler e quella di Bryan-College Station.
ggplot(data = dati)+
geom_bar(aes(x = month,
y = sales,
fill = city),
stat = "identity",
position = "stack") +
labs(
title = "Totale delle vendite per mese e città",
x = "Mese",
y = "Totale vendite",
fill = "Città"
) +
theme_minimal() +
scale_x_continuous(breaks = seq(1,12,1))+
scale_y_continuous(breaks = seq(0,5000,500))
Ci permette di confrontare meglio quanto ogni città contribuisce alla vendita totale per ogni mese. Ad esempio, osserviamo che la maggior parte delle vendite per ogni mese è fornita dalla città di Tyòer e Bryan-College Station, mentre la città di Wichita Falls contribuisce meno alle vendite totali ogni mese.
Osserviamo anche la rappresentazione grafica a barre sovrapposte normalizzata
ggplot(data = dati)+
geom_bar(aes(x = month,
y = sales,
fill = city),
stat = "identity",
position = "fill") +
labs(
title = "Totale delle vendite per mese e città",
x = "Mese",
y = "Totale vendite",
fill = "Città"
) +
theme_classic() +
scale_x_continuous(breaks = seq(1,12,1))+
scale_y_continuous(breaks = seq(0,1,0.1))
In questo caso ogni barra è normalizzata, e questo ci consente di analizzare come le diverse città contribuiscono al totale delle vendite in termini di percentuali, in quanto ogni barra rappresenta il 100% del totale delle vendite per ogni mese. Ad esempio possiamo dire che la città che domina il totale delle vendite è la città di Tyler.
Proviamo ad aggiungere anche la variabile year per permetterci di confrontare il totale delle vendite di ogni città per ogni mese dei rispettivi anni.
ggplot(data = dati)+
geom_bar(aes(x = month,
y = sales,
fill = city),
stat = "identity",
position = "fill") +
labs(
title = "Totale delle vendite per mese e città",
x = "Mese",
y = "Totale vendite",
fill = "Città"
) +
theme_minimal() +
scale_x_continuous(breaks = seq(1,12,1))+
scale_y_continuous(breaks = seq(0,1,0.1))+
facet_wrap(~ year)
Dalle varie analisi svolte possiamo giungere alla conclusione che il mercato immobiliare del Texas ha subito una forte impennata di vendite nel 2012, con un mercato in continuo aumento fino al 2014. Questo potrebbe essere dovuto all’efficacia delle inserzioni immobiliari utilizzate in quell’arco temporale, pertanto sembra che dal 2012 in poi sia cambiata la strategia di marketing adottata per la creazione delle inserzioni immobiliari e quindi consiglierei di continuare ad adottare quel tipo di strategia.
Dal punto di vista del mercato, è possibile soddisfare le esigenze di un vasto target di clientela. Infatti, troviamo città molto economiche come Wachita Falls, che quindi si adattano tranquillamente a qualsiasi fascia economica. A seguire, troviamo un mercato immobliare di fascia medio-bassa, ovvero il mercato immobiliare di Beaumont. Per una clientela che appartiene ad una fascia economica medio-alta troviamo sicurmanente le città di Tyler e Bryan-College Station, per le quali è possibile trovare anche soluzioni immobiliari di lusso, che quindi “sforano” la fascia medio-alta del mercato.
Sicuramente, si potrebbe puntare ad una crescita della città di Wachita Falls, che sembra essere la città che meno ha risentito dell’efficacia adottata nelle strategie di marketing dedicate alle inserzioni immobiliari. Quello che farei è adottare una strategia diversa, valorizzando i prezzi molto bassi degli immobili di quella città, cercando di aumentare il numero di richieste e quindi di vendite.
Un altro aspetto che non è passato inosservato è come il numero totale delle vendite aumenti durante la stagione estiva, sopratutto nelle due città più ricche analizzate. Pertanto andrei a studiare con ulteriori dati e variabili, il motivo per il quale questo avviene e rafforzerei la strategia di marketing adottata.