Introducción
Este documento contiene el código en R que realiza el análisis
solicitado sobre un conjunto de datos de casas.
Se agregan 5 renglones más (casas entre 125 y 185 m²), se calcula la
media del precio original, se asignan precios a las nuevas casas entre
el valor máximo y la media calculada, y se obtienen estadísticas (rango,
varianza, desviación estándar). Finalmente se genera una gráfica de
barras que relaciona precio y tamaño.
Datos originales actualizados
casas <- data.frame(
Tamaño = c(50, 60, 70, 80, 100, 120),
Precio = c(150, 180, 200, 240, 300, 360)
)
knitr::kable(casas, caption = "Conjunto de datos original (actualizado)", row.names = FALSE)
Conjunto de datos original (actualizado)
| 50 |
150 |
| 60 |
180 |
| 70 |
200 |
| 80 |
240 |
| 100 |
300 |
| 120 |
360 |
Crear 5 nuevas casas
nuevas_casas <- data.frame(
Tamaño = c(125, 140, 155, 170, 185),
Precio = NA
)
knitr::kable(nuevas_casas, caption = "Nuevas casas añadidas", row.names = FALSE)
Nuevas casas añadidas
| 125 |
NA |
| 140 |
NA |
| 155 |
NA |
| 170 |
NA |
| 185 |
NA |
Asignar precios a las nuevas casas proporcionalmente
# Interpolación lineal descendente entre max y media
nuevas_casas$Precio <- seq(from = precio_max - 10, to = media_precio + 10, length.out = nrow(nuevas_casas))
knitr::kable(nuevas_casas, caption = "Nuevas casas con precios asignados", row.names = FALSE)
Nuevas casas con precios asignados
| 125 |
350.0000 |
| 140 |
324.5833 |
| 155 |
299.1667 |
| 170 |
273.7500 |
| 185 |
248.3333 |
Unir conjuntos y calcular estadísticas
casas_total <- rbind(casas, nuevas_casas)
rango_precio <- max(casas_total$Precio) - min(casas_total$Precio)
varianza_precio <- var(casas_total$Precio)
desviacion_precio <- sd(casas_total$Precio)
est_stats <- data.frame(
Estadística = c("Media (original)", "Precio máximo (total)", "Precio mínimo (total)", "Rango", "Varianza", "Desviación estándar"),
Valor = c(media_precio, max(casas_total$Precio), min(casas_total$Precio), rango_precio, varianza_precio, desviacion_precio)
)
knitr::kable(est_stats, digits = 2, caption = "Estadísticas sobre los precios", row.names = FALSE)
Estadísticas sobre los precios
| Media (original) |
238.33 |
| Precio máximo (total) |
360.00 |
| Precio mínimo (total) |
150.00 |
| Rango |
210.00 |
| Varianza |
4783.62 |
| Desviación estándar |
69.16 |
Gráfica de barras
casas_total <- casas_total[order(casas_total$Tamaño), ]
palette_col <- grDevices::colorRampPalette(c("#4E79A7", "#F28E2B", "#E15759"))(nrow(casas_total))
barplot(
height = casas_total$Precio,
names.arg = casas_total$Tamaño,
las = 2,
cex.names = 0.9,
col = palette_col,
main = "Relación Precio vs Tamaño de Casas",
xlab = "Tamaño de la casa (m²)",
ylab = "Precio (miles de dólares)",
border = "white"
)
bp <- barplot(
height = casas_total$Precio,
names.arg = NA,
plot = FALSE
)
text(x = bp, y = casas_total$Precio, labels = round(casas_total$Precio, 1), pos = 3, cex = 0.8)

Conclusiones rápidas
- Se añadieron 5 casas adicionales con tamaños entre 125 y 185 m² y
precios distribuidos de manera proporcional entre el precio máximo del
conjunto original y la media original.
- La varianza y desviación estándar muestran la dispersión de precios
tras agregar las nuevas muestras.
- La gráfica de barras permite visualizar cómo se relacionan el tamaño
y el precio de cada registro.