25 ene 2020

Promedio por grupos en R


Los ejemplos siguientes muestran como obtener estadísticos por grupo en R usando la función vectorizada tapply y la función aggregate. Se puede verificar se pueden usar para obtener un promedio por grupos o por contingencia de grupos.

> head(iris)
  Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1          5.1         3.5          1.4         0.2  setosa
2          4.9         3.0          1.4         0.2  setosa
3          4.7         3.2          1.3         0.2  setosa
4          4.6         3.1          1.5         0.2  setosa
5          5.0         3.6          1.4         0.2  setosa
6          5.4         3.9          1.7         0.4  setosa

> attach(iris)

> tapply(Sepal.Length, Species, mean)
    setosa versicolor  virginica
     5.006      5.936      6.588

> aggregate(Sepal.Length~Species, data=iris, mean)
     Species Sepal.Length
1     setosa        5.006
2 versicolor        5.936
3  virginica        6.588

> tapply(Sepal.Length, list(Species,Petal.Width>1), mean)
              FALSE    TRUE
setosa     5.006000      NA
versicolor 5.414286 6.02093
virginica        NA 6.58800

> aggregate(Sepal.Length~Species+(Petal.Width>1), data=iris, mean)
     Species Petal.Width > 1 Sepal.Length
1     setosa           FALSE     5.006000
2 versicolor           FALSE     5.414286
3 versicolor            TRUE     6.020930
4  virginica            TRUE     6.588000

5 ene 2020

Valor en Riesgo (VaR) en R (3): basados en un Monte Carlo

La siguiente entrada forma parte de un conjunto de entradas donde se exponen diversas metodologías para estimar el Valor en Riesgo (VaR). En el caso de la estimación Monte Carlo, se simulan posibles trayectorias de rentabilidades ficticias para la serie de precios de interés. En nuestro caso utilizaremos las distribuciones normal y t-student, para simular n posibles rendimientos pseudo-aleatorios de nuestro vector de rentabilidades, aproximado los parámetros de esta función a partir de valores históricos de la serie de rendimientos.

library(ggfortify)
library(ggplot2)
library(forecast)
library(tseries)
library(gridExtra)

DAX <- EuStockMarkets[,"DAX"]
returnx <- diff(log(DAX))*100
autoplot(returnx)



# 1. Obtener los momentos de las series
Er <- mean(returnx)
Vr <- sd(returnx)

# 2. Generar rendimientos aleatorios
n<-10000
p <- runif(n, min=0, max=1)
RsimuladoN <- qnorm(p,Er,Vr)

# ********************************************
# 3.1 Var Monte Carlo - Normal
# ********************************************

alpha <- 0.01
VaRMonteCarlo <- quantile(RsimuladoN,alpha)
> VaRMonteCarlo
       1%
-2.356055

# ********************************************
# 3.1 Var Monte Carlo - t
# ********************************************

RsimuladoT <- qt(p,glb)
VaRMonteCarloT <- quantile(RsimuladoT,alpha)

VaRMonteCarloT
       1%
-2.352612

Estas estimaciones del VaR se pueden comparar con las estimaciones más tradicionales del VaR.

# ********************************************
# 3.3 Var paramétrico
# ********************************************

# VaR incondicional: enfoque Delta-Normal
VaRNormal <- Er + sqrt(Vr) * qnorm(alpha)

# VaR incondicional: enfoque Delta-t-student
glb <- length(returnx)-1
VaRt <- Er + sqrt(Vr) * qt(alpha,glb)

# ********************************************
# 3.4 Var histórico
# ********************************************

VaRhist <- quantile(returnx,alpha)

# ********************************************
# 4. Resultados del VaR
# ********************************************

vars <- t(c(VaRNormal,VaRt,VaRhist,VaRMonteCarlo,VaRMonteCarloT))
colnames(vars)<- c("VaR Normal paramétrico",
                   "VaR t paramétrico",
                   "VaR histórico",
                   "VaR Monte Carlo Normal",
                   "VaR Monte Carlo t")
print(t(vars))
                            [,1]
VaR Normal paramétrico -2.295877
VaR t paramétrico      -2.297916
VaR histórico          -2.775251
VaR Monte Carlo Normal -2.356055
VaR Monte Carlo t      -2.352612

qplot(returnx , geom = 'histogram') +
  geom_histogram(fill = 'lightblue' , bins = 30) +
  geom_histogram(aes(returnx[returnx < VaRNormal]) , fill = 'red' , bins = 30) +
  geom_vline(aes(xintercept = VaRNormal), colour="red") +
  geom_vline(aes(xintercept = VaRMonteCarlo), colour="black") +
  labs(x = 'Retornos diarios')


4 ene 2020

Notas estadísticas sobre muertes violentas de mujeres en la República Dominicana


Al hacer un recorrido histórico por las limitadas estadísticas de muertes violentas de mujeres en la República Dominicana, se verifica que ya a inicio de los 90’s el FLACSO consideraba el fenómeno de la violencia contra la mujer es un elemento muy extendido en la sociedad. Por lo que, el fenómeno de la violencia contra las mujeres ha sido flagelo de larga data en el país, persistente y sin una salida a la vista. 

Año de lanzamiento
Nombre
Responsable
2007
Plan Nacional de Igualdad y Equidad de Género (PLANEG II)
Ministerio de la mujer
2011
Plan Estratégico para la Prevención, Detección, Atención y Sanción a la Violencia contra las
Mujeres e Intrafamiliar 2007-2017
Ministerio de la mujer
2014
Familias en Paz.
Vicepresidenta
2016
Estrategia para el fortalecimiento de la respuesta del Sistema Nacional de Salud a la violencia.
Ministerio de Salud Publica
2017
Plan Nacional contra la violencia de género.
La Procuraduría General de República (PGR).
2019
Plan Nacional de Igualdad y Equidad de Género III 2020-2030
Ministerio de la mujer

Lo primero que se debe resaltar que ninguno de estos planes tiene, al menos publicado en la red, alguna evaluación de impacto o efectividad, entonces no podemos saber nada acerca de estos.

Según datos de la Procuraduría General de la República, entre 2017 y agosto de 2019 murieron por muertes violentes un total de 480 mujeres, de las cuales el 51.9% correspondieron a feminicidios íntimos. Es decir, que 52 de cada 100 mujeres que murieron por una causa violenta en el país, han caído víctimas de su pareja (o ex pareja). Esto significa que las muertes por su pareja es la principal causa de muerte violentas entre mujeres en el país. Este porcentaje resulta bastante superior al 18.1% asociado a muertes en riñas, que se constituye en la segunda causa de muertes en el país. Además, indica que las mujeres resultan especialmente vulnerables a episodios de violencia.

Cuando a la causa anterior (feminicidios íntimos) le sumamos causas familiares como violencia intrafamiliar, violaciones y conflictos familiares (al incluirse otros parientes, como hermanos (Martínez, 2006)), se observa que casi 6 (58.8%) de cada 10 mujeres muertas bajo circunstancias violentes (registradas por la procuraduría general) han sido victima de violencia generada en el seno familiar o por circunstancias asociadas a intimidad sexual. Esto está acorde con que según las Naciones Unidas un 35% de las mujeres dominicanas han sufrido algún tipo de violencia por parte de su pareja (UNFPA, 2013), porcentaje bastante superior al 23.9 en el año 2002 (Martínez, 2006). Además al hecho de que cerca del 80% de los agresores son conocidos por las victimas. 



En términos de más largo plazo, tal como se muestra en la Gráfica 2, se han registrado 1,287 feminicidios en el país desde el año 2005. El año 2008, donde se registraron 131 feminicidios, fue el año de mayor cantidad de feminicidios. En términos estacionales, peses a que junio y Julio son los meses donde se han registrado mayor cantidad de feminicidios, no es posible observar un componente estacional significativo que lleve señalar meses donde ocurran la mayor cantidad de feminicidios. En 2019 se han registrado 64 feminicidios, de los cuales el 55% ocurre luego de las seis de la tarde.   



Por rango de edad, se verifica que el 62.8% de las víctimas registradas desde 2015 tienen menos de 35 años; 12.5% eran aun menores de edad y 47.2% tenía entre 18 y 34 años, lo que indica que en la mayor parte de los feminicidios la victima tiene menos de 35 años. Por lo que persiste la tendencia histórica a que la mayor parte de las mujeres agredidas sean jóvenes, esto porque de más de 1,014 expedientes estudiados por el FLACSO a finales de los 80's (FLACSO, nd).



Un primer argumento para enfrentar la violencia contra la mujer asume un rol más activo de la justicia, sin embargo, medios locales han indicado que el 80% de los casos de feminicidios han pasado por la Unidad de Atención a víctimas de la fiscalía (Pérez, 2018), es decir, que hasta cierto punto pudieron ser “prevenibles”. Aunque la efectividad de la justicia parece cuestionable, pues a este punto es interesante recordar que tenemos casos en donde las mujeres han muerto en el mismo vehículo de la policía (Listín Diario, 2019).

Respecto a las cifras latinoamericanas, según datos disponible en CEPALSTAT, entre 2005 y 2018 la tasa de feminicidios en el país se redujo de forma sustancial, pasando de 4.1 a 1.9 feminicidio por cada 100.000 mujeres. En relación a los demás países de la región, con datos disponibles, en 2018 el país es el quinto, con una cifra ligeramente inferior al promedio simple (2.0) de los países considerados En términos absolutos, en 2018 se registraron en el país 106 feminicidios, 1 cada 3.4 días, aunque en promedio se registraron en promedio 6,547 denuncias de violencia contra la mujer (Méndez, 2018) que representan casi el 33% de las denuncias registradas.



 Referencias


Martínez, Leticia (2006). La perspectiva de Género en los Indicadores del Milenio. CEPAL. Consultado el 30/1/2020.  Disponible en: https://www.cepal.org/mujer/noticias/noticias/4/24634/LMartinez.pdf.

FLACSO (nd). Violencia contra la mujer. Consultado el 30/1/2020. Disponible en: http://www3.eurosur.org/FLACSO/mujeres/rdominicana/part-8.htm.

Méndez, Wanda (2018). Registran 45,829 denuncias de violencia contra mujeres. Consultado el 30/1/2020. Disponible en: https://listindiario.com/la-republica/2018/10/08/536473/registran-45829-denuncias-de-violencia-contra-mujeres.

Naciones Unidas (2017). Datos sobre la violencia contra la mujer. Periódico Listín Diario. Consultado el 30/1/2020. Disponible en: https://dominicanrepublic.unfpa.org/sites/default/files/pub-pdf/datos_violencia_UNFPA_300316%281%29.pdf.

Pérez, Romilka (2018). El 80% de los casos de feminicidios han pasado por la Unidad de Atención a Víctimas de la Fiscalía. Consultado el 30/1/2020. Periódico Acento. 

Recesión plot en R usando ggplot (recession plot in r)

En el siguiente ejemplo se simular y replica -parcialmente- un ejemplo usado por el FMI para ilustrar la importancia del uso de series de ti...