El precio de las propiedades en Chile, así como en el mundo se ha incremetando notoriamente en las últimas décadas. Según estudio de Determinantes Urbanos del precio de la vivienda existe una alta dependencia del precio sobre la autonomía financiera de las comunas. Se proporciona un set de datos con el valor de casas usadas en la Región Metropolitana de Santiago, Chile. A partir de estos datos y considerando comunas y precio, conteste lo siguiente:
# Pregunta 1.a
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(ggplot2)
library(plotly)
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
# Filtrado de base de datos, omitiendo categorías no relevante para el ejercicio
housing <- read.csv("PrecioViviendaRMChile.csv", sep = ",", header = TRUE)
cleaned_housing <- select(housing, "Price_CLP", "Comuna", "Dorms", "Baths", "Built_Area", "Total_Area")
head(cleaned_housing)
## Price_CLP Comuna Dorms Baths Built_Area Total_Area
## 1 409285000 QuintaNormal 7 4 384 732
## 2 105000000 PedroAguirreCerda 2 1 112 145
## 3 128124000 EstaciónCentral 3 1 59 243
## 4 75000000 Colina 3 1 103 73
## 5 53000000 Colina 2 1 57 67
## 6 94000000 EstaciónCentral 2 1 72 131
# Gráfico de violín
fig <- cleaned_housing %>%
plot_ly(
x = ~Comuna,
y = ~Price_CLP,
split = ~Comuna,
type = 'violin',
box = list(
visible = T
),
meanline = list(
visible = T
)
)
fig <- fig %>%
layout(
xaxis = list(
title = "Comuna"
),
yaxis = list(
title = "Valor (CLP)",
zeroline = F
)
)
fig
library(psych)
##
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
##
## %+%, alpha
prices <- select(housing, "Price_CLP", "Comuna")
estadisticos=describeBy(cleaned_housing$Price_CLP, mat = F)
print(estadisticos)
## vars n mean sd median trimmed mad min
## X1 1 7759 365186818 386936676 205176350 290041198 178173457 1423600
## max range skew kurtosis se
## X1 5516450000 5515026400 2.8 14.3 4392755
Se realizará el test de normalidad de Shapiro-Wilk. Este test en R requiere una cantidad de datos entre 3 y 5000, por lo que es necesario disminuir nuestra base de datos, para ello se escogerá una muestra aleatoria de 5000 datos.
library("nortest")
random_data <- cleaned_housing %>%
sample_n(5000)
shapiro.test(random_data$Price_CLP)$p.value
## [1] 5.452655e-68
El resultado del test es un p-value tremendamente bajo, por lo que se
rechaza la hipótesis nula.
qqnorm(cleaned_housing$Price_CLP[which(cleaned_housing$Comuna=="PuenteAlto")], pch = 19, col = "darkblue")
qqline(cleaned_housing$Price_CLP[which(cleaned_housing$Comuna=="PuenteAlto")])
Se escogió la comuna de Puente Alto. Podemos observar que los datos en este caso tampoco son normales.
El precio de las propiedades tiende a seguir tendencias de mercado, en donde influyen múltiples variables, además existe una gran disparidad entre precios, por lo que la cantidad de outliers puede ser muy elevada. La mayor frecuencia de aparición de precios se encuentra desplazada hacia la izquierda, lo que la hace más parecida a una distribución log-normal o incluso a una distribución de Weibull.
random_plot <- plot_ly(random_data, x = ~Price_CLP, type = "histogram",
histnorm = "count", nbinsx = 300,
marker = list(color = "#F4D03F")) %>%
layout(title = "Distribución de Precios de Propiedades en Chile",
xaxis = list(title = "Valor (CLP)"),
yaxis = list(title = "Frecuencia"),
bargap = 0.1)
random_plot
De acuerdo a la Organización Mundial de la Salud (OMS), la salud mental nos permite hacer frente a los momentos de estrés de la vida, desarrollar habilidades, aprender, trabajar adecuadamente y contribuir a la mejora de las comunidades. A continuación se presenta un data set sobre el cual usted deberá realizar lo siguiente:
Se escogió la cantidad de suicidios cada cien mil habitantes y el gasto porcentual del PIB en salud de cada país.
datos <- read.csv("WHO.csv", sep = ",", header = TRUE)
# Filtrado de datos
year_to_select <- 2019 # Specify the year you want to select
filtered_data <- datos %>%
group_by(Country_Name) %>%
filter(Year == year_to_select) %>%
slice(1) %>%
ungroup()
head(filtered_data)
## # A tibble: 6 × 9
## Country_Name Year Population Deaths_All_Types Deaths_Suicides HExp_Pctage_Y
## <chr> <int> <dbl> <int> <int> <dbl>
## 1 Armenia 2019 2962482 52370 0 11.3
## 2 Australia 2019 25364307 337920 1 9.91
## 3 Brazil 2019 210147125 2699602 3 9.59
## 4 Bulgaria 2019 6975760. 216166 3 7.13
## 5 Costa Rica 2019 5058007 48584 0 7.27
## 6 Egypt 2019 98901934 1141160 72 4.74
## # ℹ 3 more variables: MHExp_Pctage_2011 <dbl>, Dep_Num_2015 <dbl>,
## # Suicide_p100 <dbl>
grafico <- ggplot(filtered_data, aes(x = HExp_Pctage_Y, y = Suicide_p100, label = Country_Name)) +
geom_point(color = "darkblue", alpha = 0.4) +
theme_bw() +
xlab("Gasto porcentual del PIB nacional en salud") +
ylab("Suicidios cada 100 mil habitantes") +
ggtitle("Suicidios y Gasto porcentual del PIB en salud") +
theme(plot.title = element_text(hjust = 0.5)) +
geom_text(hjust = 0.1, vjust = 0.1)
ggplotly(grafico)
# Regresión lineal
fit_linear = lm(Suicide_p100~HExp_Pctage_Y,filtered_data)
print(fit_linear)
##
## Call:
## lm(formula = Suicide_p100 ~ HExp_Pctage_Y, data = filtered_data)
##
## Coefficients:
## (Intercept) HExp_Pctage_Y
## 8.75218 -0.01995
print(summary(fit_linear))
##
## Call:
## lm(formula = Suicide_p100 ~ HExp_Pctage_Y, data = filtered_data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5.8660 -2.1099 -0.3601 2.5702 7.4391
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 8.75218 2.61984 3.341 0.00343 **
## HExp_Pctage_Y -0.01995 0.32746 -0.061 0.95206
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3.503 on 19 degrees of freedom
## Multiple R-squared: 0.0001953, Adjusted R-squared: -0.05243
## F-statistic: 0.003711 on 1 and 19 DF, p-value: 0.9521
grafico_lr=ggplot(filtered_data,aes(HExp_Pctage_Y ,Suicide_p100,label=Country_Name)) +
geom_point(aes(HExp_Pctage_Y,Suicide_p100),filtered_data,color="darkblue",alpha=0.4) +
theme_bw() + xlab("Gasto porcentual del PIB nacional en salud") +
ylab("Suicidios cada 100 mil habitantes") +
ggtitle("Suicidios y Gasto porcentual del PIB en salud") +
theme(plot.title = element_text(hjust = 0.5)) + geom_text(hjust=0.1, vjust=0.1) +
geom_smooth(method ="lm", formula = y ~ x,level=0.95)
ggplotly(grafico_lr)
correlation <- cor(filtered_data$HExp_Pctage_Y, filtered_data$Suicide_p100)
print(correlation)
## [1] -0.01397481
La correlación es cercana a cero entre el gasto total en salud y la cantidad de suicidios cada cien mil habitantes. Por lo que la relación existente entre las variables escogidas no es significativa. Esto puede deberse a múltiples motivos, el suicidio es un tema complejo en donde inciden múltiples aspectos de la vida. Esto no debe significar, sin embargo, que deba disminuir el gasto en salud mental necesariamente. Continuar estudiando estos temas y sus motivaciones permiten abordarlos de mejor manera y encontrar propuestas que tengan mayor efectividad.
Se escogen nuevas variables, esta vez el gasto en salud general y el gasto en salud mental.
grafico_lr=ggplot(filtered_data,aes(HExp_Pctage_Y ,MHExp_Pctage_2011,label=Country_Name)) +
geom_point(aes(HExp_Pctage_Y,MHExp_Pctage_2011),filtered_data,color="darkblue",alpha=0.4) +
theme_bw() + xlab("Gasto porcentual del PIB nacional en salud general") +
ylab("Gasto en salud mental") +
ggtitle("Gasto porcentual del PIB en salud general y gasto en salud mental") +
theme(plot.title = element_text(hjust = 0.5)) + geom_text(hjust=0.1, vjust=0.1) +
geom_smooth(method ="lm", formula = y ~ x,level=0.95)
ggplotly(grafico_lr)
correlation <- cor(filtered_data$HExp_Pctage_Y, filtered_data$MHExp_Pctage_2011)
print(correlation)
## [1] 0.5099129
Observación: En el dataset no se entrega suficiente información sobre si el gasto en salud mental corresponde a gasto estatal dentro del porcentaje de gasto general en salud o si corresponde a un porcentaje de gasto personal de la población. Por el contexto del dataset, se asumirá que es gasto estatal.
Esta vez la correlación es > 0, lo que se condice con que podemos observar una recta empinada en el gráfico. Por lo que sí existe correlación entre el gasto en salud y el gasto en salud mental, lo que podría parecer obvio en un inicio, pero no necesariamente lo es. Un país puede gastar en salud de manera general pero no necesariamente dirigir recursos a salud mental, por ejemplo en el caso de Brasil o Armenia en donde hay un alto gasto en general, pero destinado a otras áreas de la salud. Por otro lado, está el caso de Alemania que tiene un muy alto gasto en salud mental y un alto gasto en salud general.