# cargar librerías a usar
library(ggplot2)
library(dplyr)Estadística I, Laboratorio 3 y Tarea 6
Indique su nombre y cédula
Nombre:
Cédula:
Temas a abordar:
Números índices
- Índice simple: Mide el cambio individual de cada precio respecto al período base.
- Índice agregado simple: Compara el promedio de precios en distintos períodos, sin ponderar por cantidades.
- Índice agregado ponderado de Laspeyres: Usa cantidades del período base para ponderar precios. Tiende a sobreestimar el aumento del costo de vida.
- Índice agregado ponderado de Paasche: Usa cantidades actuales, reflejando sustitución de bienes. Tiende a subestimar el aumento del costo de vida.
Series de Tiempo:
Análisis de series de tiempo
Definir los bienes y servicios
# usar la función c() de R
c("Arroz", "Carne", "Transporte", "Medicina", "Educacion")Definir precios para cada producto
c(2.5, 5.0, 1.2, 3.0, 4.5) # período base
c(3.0, 5.5, 1.3, 3.5, 4.8) # precios período 1
c(3.2, 6.0, 1.4, 3.4, 5.2) # precios período 2Crear una estructura donde se almacenen los datos
La estructura se crea con una función que se llama data.frame que se llama datos_precios
# Simulación de datos de precios
datos_precios = data.frame(
Bien = c("Arroz", "Carne", "Transporte", "Medicina", "Educacion"), # bienes y servicios
P0 = c(2.5, 5.0, 1.2, 3.0, 4.5), # Precios en período base
P1 = c(3.0, 5.5, 1.3, 3.5, 4.8), # Precios en período 1
P2 = c(3.2, 6.0, 1.4, 3.4, 5.2) # Precios en período 2
)datos_preciosVamos a signar las cantidades consumidas para cada bien o servicio en el período base:
1- arroz: 10 unidades
2- carne: 8 unidades
3- transporte: 15 pasajes
4- medicina: 6 unidades
5- Educacion: 4 unidades crédito
Lo mismo se define para otros dos períodos en cantidades_1 y cantidades_2
# Cantidades base (para índices ponderados)
cantidades_base <- c(10, 8, 15, 6, 4) # la letra c indica que es un vector
# Cantidades actuales (para Paasche)
cantidades_1 <- c(9, 8, 16, 5, 5)
cantidades_2 <- c(8, 7, 18, 6, 6)cantidades_base
cantidades_1
cantidades_2# Agregamos las cantidades al dataframe
# se usa la letra Q que viene de cantidades en inglés (quantities)
datos_precios$Q0 = cantidades_base # $Q0 se usa para crear una nueva columna
datos_precios$Q1 = cantidades_1 # $Q1 se crea otra columna en datos_precios
datos_precios$Q2 = cantidades_2 # $Q2 se crea otra columna en datos_preciosRevisar la nueva data frame con todos los datos de interés
datos_preciosCálcular Índice Simple
# crear la nueva data frame en la que mostraremos el índice simple
# obviar a nive de codigos
indice_simple <- datos_precios[ , c("Bien", "P0", "P1", "P2")]
indice_simple¿Cómo calcularíamos el índice simple para el período 1? mediante el operador $ insertamos una columna nueva
# paso a paso
indice_simple$P1 #precios período 1
indice_simple$P0 #precios período base
indice_simple$P1/indice_simple$P0 # opera dividiendo cada valor de P1 entre cada valor de P0 según la posiciónindice_simple$I_Simple_01 = indice_simple$P1/indice_simple$P0
indice_simpley para el período 2?
indice_simple$I_Simple_02 = indice_simple$P2/indice_simple$P0
indice_simpleejercicio tarea:
1- Modificar cada uno de los índices y colocarlos en terminos porcentuales
2- Calcular la variación por entre período 1 y 2 colocarlo en una nueva columna de indice_simple
Índice Agregado Simple
datos_precios$P0 # precios periodo 0
datos_precios$P1 # precios periodo 1
sum(datos_precios$P1) # ver suma de productos en período 1
sum(datos_precios$P0)# ver suma de productos en período base# ---- ÍNDICE AGREGADO SIMPLE ----
# Suma de precios en cada periodo dividido por la suma del período base
I_agregado_simple_01 <- sum(datos_precios$P1) / sum(datos_precios$P0)
I_agregado_simple_01 # valor del índice simple
I_agregado_simple_01*100 # valor del índice simple en términos porcentuales# ---- ÍNDICE AGREGADO SIMPLE ----
# Suma de precios en cada periodo dividido por la suma del período base
I_agregado_simple_02 <- sum(datos_precios$P2) / sum(datos_precios$P0)
round(I_agregado_simple_02*100, 2) #aproximo el número mediante la función roundÍNDICE AGREGADO PONDERADO LASPEYRES
fórmula = Σ P1 * Q0 / Σ P0 * Q0
datos_preciosPaso a paso antes de obtener valores
# (Σ P1*Q0) / (Σ P0*Q0)
datos_precios$P1 * datos_precios$Q0 # multiplicacion de cada precio periodo 1 por cantidades periodo base 0
sum(datos_precios$P1 * datos_precios$Q0) # numerador de la fórmula (Σ P1*Q0) de Laspeyres
datos_precios$P0 * datos_precios$Q0 # multiplicacion de cada precio periodo base por cantidades periodo base 0
sum(datos_precios$P0 * datos_precios$Q0) # denominador de la formula (Σ P0*Q0)
sum(datos_precios$P1 * datos_precios$Q0) / sum(datos_precios$P0 * datos_precios$Q0) # resultado
round(sum(datos_precios$P1 * datos_precios$Q0) / sum(datos_precios$P0 * datos_precios$Q0) , 2) # redondear el resultado anterior# asignar a I_laspeyres_01 el resultado período 1
I_laspeyres_01 <- sum(datos_precios$P1 * datos_precios$Q0) / sum(datos_precios$P0 * datos_precios$Q0)
# asignar a I_laspeyres_02 el resultado período 2
I_laspeyres_02 <- sum(datos_precios$P2 * datos_precios$Q0) / sum(datos_precios$P0 * datos_precios$Q0)# Revisar los valores del índice de Laspeyres
cat("Período 1 vs base:", round(I_laspeyres_01, 2), "\n")
cat("Período 2 vs base:", round(I_laspeyres_02, 2), "\n")ÍNDICE AGREGADO PONDERADO PAASCHE
fórmula = Σ P1 * Q1 / Σ P0 * Q1
# (Σ P1*Q1) / (Σ P0*Q1)
I_paasche_01 <- sum(datos_precios$P1 * datos_precios$Q1) / sum(datos_precios$P0 * datos_precios$Q1)
I_paasche_02 <- sum(datos_precios$P2 * datos_precios$Q2) / sum(datos_precios$P0 * datos_precios$Q2)cat("Período 1 vs base:", round(I_paasche_01, 3), "\n")
cat("Período 2 vs base:", round(I_paasche_02, 3), "\n")ejercicio tarea:
3- hacer Paso a paso de paashe, según paso a paso que se muestra Laspeyre
Series de Temporales
Ejemplo 1: producción de petróleo Venezuela-Colombia
# cargar datos
# fuente de los datos, Our World in Data
prod_petroleo = read.csv('https://raw.githubusercontent.com/javendaXgh/ucveconomiaestadistica1/refs/heads/main/data/producion_petroleo.csv')prod_petroleoggplot(prod_petroleo,aes(x=Year,
y=produccionK,
color= Entity ))+
geom_line()Ejemplo 2: valor apple
# cargar datos de valores de cierre diario de acción apple para período 2021-2025
df_valor_apple = read.csv('https://raw.githubusercontent.com/javendaXgh/ucveconomiaestadistica1/refs/heads/main/data/df_valor_apple.csv')%>%
as_tibble()%>%
mutate(fecha= as.Date(fecha))# revisar valores
head(df_valor_apple)Visualizar los movimientos de las acción año a año
ggplot(df_valor_apple,
aes(x=dia,
y=AAPL.close,
color=factor(year)))+
geom_line()+
geom_smooth() # permite ver la serie suavizada y es recomendable para visualizar tendenciasggplot(df_valor_apple,
aes(x=fecha,
y=AAPL.close))+
geom_line()+
geom_smooth()Visualizar los movimientos de las acción durante todo el período
Ejercicio:
Identificar en al menos un gráficos representados anteriormente, cada uno de los siguientes compomentes visuales:
Tendencia: dirección general a largo plazo.
Estacionalidad: patrones repetitivos dentro de un período fijo.
Ciclicidad: ondulaciones de mayor duración.
Aleatoriedad: fluctuaciones irregulares.
Puede hacer captures de pantalla de un área del gráfico que en particular esté analizando y subirlos al notebook añadiendo una celda de texto con su correspondiente análisis.
Ejemplo:
se observa que para la siguiente imagen de apple en el año tal, en los días tal …..
hay una subida y bla, bla, bla