Páginas

Mostrando entradas con la etiqueta programación. Mostrar todas las entradas
Mostrando entradas con la etiqueta programación. Mostrar todas las entradas

sábado, 25 de octubre de 2025

Aplicaciones Prácticas de las Matrices con R: Ejemplos del Mundo Real

Operaciones con Matrices y Simulación en R



Las matrices son estructuras fundamentales en matemáticas y programación que nos permiten organizar números en filas y columnas. Son útiles en álgebra lineal, estadística, ciencias de datos y simulaciones. En este artículo, exploraremos las operaciones básicas con matrices y cómo realizarlas en R, con ejemplos y resultados simulados.

1. Creación de matrices en R

 # Matriz A 
A <- matrix(c(1,2,3,4,5,6,7,8,9), nrow=3, byrow=TRUE) 
# Matriz B 
B <- matrix(c(9,8,7,6,5,4,3,2,1), nrow=3, byrow=TRUE) 

Resultado de A:

123
456
789

Resultado de B:

987
654
321

2. Suma y Resta

 # Suma 
Suma <- A + B 
# Resta 
Resta <- A - B 

A + B:

101010
101010
101010

A - B:

-8-6-4
-202
468

3. Multiplicación

 # Multiplicación elemento por elemento 
Elem <- A * B 
# Multiplicación matricial 
Mat <- A %*% B 

Elemento por elemento (A * B):

91621
242524
21169

Multiplicación matricial (A %*% B):

302418
846954
13811490

4. Transpuesta

 # Transpuesta de A 
t(A) 

Transpuesta de A:

147
258
369

5. Determinante e Inversa

 # Determinante de A 
det(A) # = 0, no tiene inversa 
# Matriz C y su inversa 
C <- matrix(c(1,2,3,0,1,4,5,6,0), nrow=3, byrow=TRUE) solve(C) 

Inversa de C:

001
-211
3-1-2

6. Simulación con matrices aleatorias

 # Generar matrices aleatorias 3x3 
set.seed(123) 
M1 <- matrix(sample(1:10, 9, replace=TRUE), 3, 3) 
M2 <- matrix(sample(1:10, 9, replace=TRUE), 3, 3) 
# Mostrar operaciones 
M1 + M2 
M1 %*% M2 

Resultado de M1:

338
6107
1047

Resultado de M2:

736
1027
277

Aplicaciones de las Matrices en Situaciones del Mundo Real

Las matrices no solo son un concepto matemático; son herramientas que nos permiten resolver problemas reales en ingeniería, economía, ciencia de datos y logística. A continuación veremos algunos ejemplos prácticos y cómo implementarlos en R.

1. Economía: Flujo de Productos entre Tiendas

Supongamos que tenemos 3 tiendas que intercambian productos entre ellas. Podemos usar matrices para modelar los flujos y calcular el inventario final.

# Matriz de productos enviados de cada tienda a las otras
flujo <- matrix(c(
  0, 10, 5,
  2, 0, 4,
  1, 3, 0
), nrow=3, byrow=TRUE)

# Inventario inicial
inventario <- c(50, 60, 40)

# Inventario final = Inventario inicial - salida + entrada
inventario_final <- inventario - rowSums(flujo) + colSums(flujo)
inventario_final
Resultado: Inventario final de tiendas = [50, 61, 44]

2. Ingeniería: Transformación de Coordenadas

En gráficos por computadora, robótica o ingeniería, las matrices se usan para rotar, escalar y trasladar objetos en el espacio.

# Coordenadas de un punto
punto <- matrix(c(2, 3), nrow=2)

# Matriz de rotación 90 grados
rotacion <- matrix(c(0,-1,1,0), nrow=2)

# Punto rotado
punto_rotado <- rotacion %*% punto
punto_rotado
Resultado: Punto rotado = [-3, 2]

3. Redes y Transporte: Modelando Tráfico

Una matriz puede representar el número de vehículos que se mueven entre ciudades, y con álgebra matricial podemos predecir congestiones.

# Tráfico diario entre 3 ciudades
trafico <- matrix(c(
  0, 100, 50,
  70, 0, 30,
  20, 40, 0
), nrow=3, byrow=TRUE)

# Total de vehículos que llegan a cada ciudad
llegadas <- colSums(trafico)
llegadas
Resultado: Vehículos que llegan por ciudad = [90, 140, 80]

4. Economía y Finanzas: Portafolio de Inversiones

Las matrices ayudan a calcular rendimientos esperados y riesgos de portafolios con varias acciones.

# Rendimientos de 3 activos durante 4 días
rendimientos <- matrix(c(
  0.01, 0.02, 0.015,
  0.005, 0.01, 0.02,
  0.02, 0.015, 0.01,
  0.01, 0.01, 0.005
), nrow=4, byrow=TRUE)

# Promedio de rendimientos por activo
promedio <- colMeans(rendimientos)
promedio
Resultado: Rendimiento promedio por activo = [0.01125, 0.0135, 0.0125]

5. Ciencia: Análisis de Imágenes

Las imágenes digitales son matrices de píxeles. Podemos manipularlas con matrices para ajustar brillo o aplicar filtros.

# Ejemplo simple de imagen 3x3
imagen <- matrix(c(
  100, 120, 130,
  90, 110, 120,
  80, 100, 110
), nrow=3, byrow=TRUE)

# Aumentar brillo
imagen_brillo <- imagen + 20
imagen_brillo
Resultado: Nueva matriz de píxeles =
[120, 140, 150]
[110, 130, 140]
[100, 120, 130]

Conclusión

Como vemos, las matrices son versátiles y aplicables en muchos campos: logística, ingeniería, finanzas, transporte y ciencia. Aprender a manejarlas con R nos permite modelar, simular y resolver problemas del mundo real de manera eficiente.

Las matrices son herramientas poderosas para representar y manipular datos numéricos. Con R, podemos realizar operaciones básicas y simulaciones complejas, mostrando resultados claros y reproducibles. Este conocimiento es esencial para estadística, análisis de datos y modelado matemático.

viernes, 24 de octubre de 2025

Cómo ayuda el lenguaje R a aprender la matemática a estudiantes de secundaria

Lenguaje R para enseñar matemáticas

Cómo ayuda el lenguaje R a aprender la matemática a estudiantes de secundaria

Introducción

En la enseñanza de la matemática, uno de los mayores desafíos es lograr que los estudiantes comprendan los conceptos de manera significativa. En lugar de memorizar fórmulas, se busca que puedan explorar, visualizar y experimentar. En este contexto, el lenguaje R se presenta como una herramienta ideal: gratuita, versátil y poderosa, permite a los estudiantes interactuar con los contenidos matemáticos mediante la programación, potenciando su razonamiento lógico y su interés por la materia.

¿Qué es el lenguaje R?

R es un lenguaje de programación especializado en el análisis estadístico, la simulación y la representación gráfica de datos. Su facilidad para realizar operaciones matemáticas, graficar funciones y analizar datos reales lo convierte en un aliado educativo en el nivel secundario. Además, su interfaz es gratuita y funciona en cualquier sistema operativo (Windows, Linux o MacOS).

Ejemplos de cómo enseñar matemática con R

1. Operaciones básicas y expresiones aritméticas

# Suma, resta, multiplicación y división
2 + 3      # 5
8 - 4      # 4
6 * 7      # 42
9 / 3      # 3

# Potencias y raíces
3^4        # 81
sqrt(49)   # 7

# Módulo (residuo de una división)
15 %% 4    # 3

# Prioridad de operaciones
resultado <- (5 + 3) * 2^2 / 4
resultado

Aplicación didáctica: los estudiantes pueden comprobar reglas de prioridad de operaciones, redondeos y propiedades aritméticas.

2. Álgebra: expresiones y ecuaciones

# Resolver ecuaciones simples
x <- 5
y <- 2*x + 3
y

# Resolver una ecuación cuadrática simbólicamente
library(caracas)
x <- symbol('x')
solve(x^2 - 5*x + 6, x)

Aplicación didáctica: explorar soluciones de ecuaciones lineales y cuadráticas, mostrando gráficamente las raíces en el eje X.

3. Funciones y gráficas

x <- seq(-10, 10, 0.1)
y <- x^2 - 4*x + 3

plot(x, y, type="l", col="blue", lwd=2,
     main="Gráfico de una función cuadrática",
     xlab="x", ylab="y")
abline(h=0, v=0, col="gray")

Aplicación didáctica: observar cómo cambian las parábolas al modificar los coeficientes, lo que ayuda a entender el efecto de a, b y c en y = ax² + bx + c.

4. Estadística básica

# Conjunto de datos
notas <- c(65, 70, 75, 80, 85, 90, 95)

# Medidas de tendencia central
mean(notas)      # Promedio
median(notas)    # Mediana
sd(notas)        # Desviación estándar
var(notas)       # Varianza

# Gráfico de barras
barplot(notas, main="Notas de los estudiantes",
        col="skyblue", names.arg=1:7, ylab="Puntuación")

Aplicación didáctica: los estudiantes pueden analizar sus propias calificaciones, interpretar la dispersión y calcular promedios.

5. Geometría analítica

# Puntos en el plano
x <- c(1, 4, 6)
y <- c(2, 3, 7)

plot(x, y, main="Puntos en el plano", pch=19, col="red",
     xlim=c(0, 8), ylim=c(0, 8), xlab="x", ylab="y")
grid()

# Dibujar una línea entre dos puntos
lines(c(1,6), c(2,7), col="blue", lwd=2)

# Calcular distancia entre dos puntos
dist <- sqrt((6-1)^2 + (7-2)^2)
dist

Aplicación didáctica: reforzar el concepto de distancia entre dos puntos, pendiente de una recta y ecuaciones de líneas.

6. Probabilidad y simulación

# Lanzamiento de un dado
sample(1:6, 10, replace=TRUE)

# Lanzamiento de una moneda
sample(c("Cara", "Cruz"), 10, replace=TRUE)

# Simular 1000 lanzamientos de un dado
dados <- sample(1:6, 1000, replace=TRUE)
table(dados) / 1000  # Probabilidad experimental

# Gráfico de frecuencias
barplot(table(dados), col="orange",
        main="Distribución de lanzamientos de un dado")

Aplicación didáctica: comprender el concepto de frecuencia relativa y su aproximación a la probabilidad teórica.

Beneficios pedagógicos del uso de R

  • Promueve el aprendizaje activo: los estudiantes experimentan y obtienen retroalimentación inmediata.
  • Facilita la visualización de conceptos abstractos.
  • Desarrolla el pensamiento computacional y lógico.
  • Integra matemática, tecnología y análisis de datos, fortaleciendo competencias STEM.
  • Fomenta la motivación y la autonomía del estudiante al explorar por sí mismo.

Conclusión

El lenguaje R no solo es una herramienta de análisis estadístico, sino también un laboratorio interactivo de aprendizaje matemático. Con pocos recursos, los docentes pueden crear experiencias dinámicas que estimulen el pensamiento crítico y el razonamiento lógico. Incorporar R en la enseñanza secundaria abre las puertas a una matemática más visual, aplicada y conectada con el mundo real.


martes, 30 de septiembre de 2025

Problemas o Tipos de Temas donde sería Adecuado Usar R en Salida Optativa de Quinto Grado Secundaria

roblemas o Tipos de Temas donde sería Adecuado Usar R

Problemas o Tipos de Temas donde sería Adecuado Usar R

Tema o Problema Descripción
1 Medidas de tendencia central Calcular media, mediana, moda y gráficos para conjuntos de datos numéricos.
2 Medidas de dispersión Determinar rango, varianza, desviación estándar, cuartiles y detectar outliers.
3 Percentiles y cuartiles Encontrar percentiles específicos y su interpretación en datos escolares.
4 Probabilidad experimental y teórica Comparar proporciones de experimentos con probabilidades teóricas.
5 Probabilidad condicional Calcular probabilidades condicionales a partir de tablas de contingencia.
6 Distribución binomial Modelar experimentos con número fijo de ensayos y probabilidad constante de éxito.
7 Distribución de Poisson Contar eventos raros en intervalos fijos y calcular probabilidades.
8 Distribución de la media muestral Analizar comportamiento de medias de muestras aleatorias y error estándar.
9 Correlación y regresión lineal Determinar relación entre variables y ajustar modelos predictivos simples.
10 Esperanza matemática y juegos de azar Calcular valor esperado de premios y analizar justicia de juegos.


Actividades de Estadística con R — Quinto Grado

Este recurso contiene 10 problemas prácticos de estadística que los docentes pueden resolver con el lenguaje R. Cada problema incluye: descripción, datos, código en R y resultados esperados.

1) Medidas de tendencia central — notas de examen

Problema: Toma las notas de 20 alumnos. Calcula media, mediana, moda y dibuja histograma y boxplot.

nota <- boxplot="" c="" factor="" hist="" horizontal="TRUE)" mean="" median="" nota="" pre="" sd="" tabulate="">
  

Resultados esperados: Media ≈ 79.6, Mediana = 80, Moda = 60, Desviación estándar ≈ 9.31.

Nota didáctica: Comparar media vs. mediana y observar efecto de valores extremos.

2) Medidas de dispersión — alturas (cm)

Problema: Dadas las alturas de 15 estudiantes, comparar dispersión y encontrar outliers.

altura_cm <- altura_cm="" boxplot="" c="" horizontal="TRUE)" pre="" probs="c(0.25,0.5,0.75))" quantile="" range="" sd="" var="">
  

Resultados esperados: Rango = 13 cm, Varianza ≈ 15.18, Desviación estándar ≈ 3.90, Cuartiles ≈ Q1=152.5, Q2=155, Q3=158.5.

Nota didáctica: Usar boxplot para identificar posibles outliers.

3) Percentiles — tiempos de carrera

Problema: Determinar el percentil 90 del tiempo (segundos) en una carrera escolar.

tiempos <- c="" pre="" probs="0.9)" quantile="" tiempos="">
  

Resultado esperado: Percentil 90 ≈ 13.09 s.

Nota didáctica: Explicar qué representa el percentil 90.

4) Probabilidad experimental vs teórica — lanzamientos de moneda

Problema: Lanzar una moneda 100 veces y comparar proporción de caras con la probabilidad teórica (0.5).

set.seed(123)
reps <- 100="" c="" hist="" lanzamientos="" mean="" pre="" replace="TRUE)))" replicate="" reps="" sample="">
  

Resultado esperado: Proporción cercana a 0.5, la media de repeticiones converge a 0.5.

Nota didáctica: Mostrar ley de los grandes números.

5) Probabilidad condicional — aprobados en Matemática y Física

Problema: En una muestra de 100 estudiantes: 40 aprobaron ambas, 20 solo Matemática, 10 solo Física, 30 ninguna. Calcular P(Física|Matemática) y P(Matemática|Física).

tabla <- aprobada="" atem="" byrow="TRUE)" c="" colnames="" matrix="" no="" nrow="2," pre="" prop_cond_f="" prop_cond_m="" rownames="" sica="" sum="" tabla="" tica="">
  

Resultados esperados: P(Física|Matemática) = 0.667, P(Matemática|Física) = 0.8.

Nota didáctica: Trabajar con tabla de contingencia.

6) Distribución binomial — éxitos en intentos

Problema: Experimento con 10 intentos y p=0.3. Probabilidad de exactamente 3 éxitos y esperanza.

dbinom(3, size=10, prob=0.3)
10*0.3  # Media
10*0.3*0.7  # Varianza
x <- 0:10="" dbinom="" plot="" pre="" prob="0.3)," size="10," type="h" x="">
  

Resultados esperados: P(X=3) ≈ 0.2668, Media = 3, Varianza = 2.1.

Nota didáctica: Relacionar con conteo combinatorio.

7) Distribución Poisson — eventos raros

Problema: Llamadas perdidas con λ=2.5. Probabilidad de recibir 0 llamadas perdidas.

lambda <- 2.5="" dpois="" lambda="" pre="">
  

Resultado esperado: P(X=0) ≈ 0.0821, Media = Varianza = 2.5.

Nota didáctica: Aplicar Poisson a conteo de eventos.

8) Distribución de la media muestral — muestreo

Problema: Población de alturas con media 156 y sd≈3.65. Tomar muestras de n=5.

set.seed(123)
poblacion <- 5="" error="" est="" hist="" mean="" medias="" ndar="" poblacion="" pre="" replace="TRUE)))" replicate="" rnorm="" sample="" sd="" sqrt="">
  

Resultados esperados: Media ≈ 156, sd ≈ 3.65, error estándar ≈ 1.63.

Nota didáctica: Mostrar que la media muestral se concentra alrededor de la media poblacional.

9) Correlación y regresión lineal — horas de estudio vs nota

Problema: Ajustar recta de regresión e interpretar resultados.

horas <- abline="" c="" cor="" horas="" lm="" mod="" nota="" plot="" pre="" summary="">
  

Resultados esperados: nota ≈ 51.12 + 7.265·horas, r ≈ 0.988, R² ≈ 0.976.

Nota didáctica: Explicar correlación alta pero aclarar que no implica causalidad absoluta.

10) Esperanza matemática — juego justo o no

Problema: Pagas RD$2 para jugar. Si sale 6, ganas RD$10; si no, RD$0. Calcular valor esperado.

esperanza_premio <- -="" 2="" esperanza_premio="" ganancia_neta="" pre="">
  

Resultado esperado: Esperanza del premio ≈ 1.67, ganancia neta ≈ -0.33 (pérdida).

Nota didáctica: Usar para analizar juegos de azar y conveniencia.

Aprendiendo Lenguaje R en Quinto Grado: Matemática y Tecnología de manera divertida

Aprendiendo Lenguaje R en Quinto Grado: Matemática y Tecnología de manera divertida

Actividades con lenguaje R


R es un lenguaje de programación muy útil para trabajar con datos y hacer cálculos matemáticos. Aunque parezca avanzado, podemos usarlo de manera simple para aprender matemáticas y tecnología, haciendo gráficos y resolviendo problemas de forma divertida.

En este tutorial aprenderás:

1. Instalación de R y RStudio

  1. Ve a https://cran.r-project.org y descarga R según tu sistema operativo.
  2. Ve a https://www.rstudio.com/products/rstudio/download/ y descarga RStudio Desktop.
  3. Abre RStudio; es un entorno más fácil para escribir y ejecutar R.

2. Primeros pasos en R

En R podemos hacer operaciones como en una calculadora:

# Suma
5 + 3

# Resta
10 - 4

# Multiplicación
6 * 7

# División
20 / 5

Tip: Cada vez que escribas un comando, presiona Enter y R te dará la respuesta.

3. Guardar resultados en variables

Podemos guardar números o resultados para usarlos después:

x <- 10  # Guardamos 10 en la variable x
y <- 5   # Guardamos 5 en la variable y

suma <- x + y   # Suma de x e y
resta <- x - y  # Resta de x e y

suma
resta

4. Trabajando con vectores

Un vector es una lista de números, útil para hacer gráficos o cálculos con varios números:

notas <- c(7, 8, 9, 10, 6)  # Creamos un vector con notas
mean(notas)  # Promedio de las notas
sum(notas)   # Suma de todas las notas

5. Haciendo gráficos

R nos permite hacer gráficos de manera sencilla. Por ejemplo, para representar las notas de los estudiantes:

barplot(notas,
        main = "Notas de los estudiantes",
        xlab = "Estudiantes",
        ylab = "Calificaciones",
        col = "skyblue")

Tip: Puedes cambiar el color con col y el título con main.

6. Resolviendo un problema matemático

Supongamos que queremos sumar todos los números pares del 1 al 10:

numeros <- 1:10          # Números del 1 al 10
pares <- numeros[numeros %% 2 == 0]  # Filtramos solo los pares
sum(pares)               # Sumamos los números pares

Conclusión

Con solo unos pocos comandos, R nos permite hacer operaciones matemáticas, guardar resultados, crear gráficos y resolver problemas de manera fácil y divertida. ¡Ahora puedes experimentar con tus propios números y problemas!

Siguiente paso

En futuros tutoriales exploraremos: